Neural net input/output
Your features must be decomposed into parts that can be represented as real numbers. The magic of a Neural Net is it's a black box, the correct associations will be made (with internal weights) during the training

Inputs
Choose as few features as are needed to accurately describe the situation, then decompose each into a set of real valued numbers.

Weather: [temp today, humidity today, temp yesterday, humidity yesterday...] the association between today's temp and today's humidity is made internally
Team stats: [ave height, ave weight, max height, top score,...]
Dice: not sure I understand this one, do you mean how to encode discrete values?*
Complex number: [a,ai,b,bi,...]

* Discrete valued features are tricky, but can still still be encoded as (0.0,1.0). The problem is they don't provide a gradient to learn the threshold on.

Outputs
You decide what you want the output to mean, and then encode your training examples in that format. The fewer output values, the easier to train.

Weather: [tomorrow's chance of rain, tomorrow's temp,...] **
Team stats: [chance of winning, chance of winning by more than 20,...]
Complex number: [x,xi,...]

** Here your training vectors would be: 1.0 if it rained the next day, 0.0 if it didn't

Of course, whether or not the problem can actually be modeled by a neural net is a different question.
Can anyone explain to me how to do more complex data sets like team stats, weather, dice, complex number types 
i understand all the math and how everything works i just dont know how to input more complex data, and then how to read the data it spits out 
if someone could provide examples in python that would be a big help