When working with floating point numbers in python, I came across this rounding apparently for no reason when the number is that certain size. The example below shows the variable 'a' with the number saved as a string ending in 79 and when it becomes a floating point number it automatically turns 80. This behavior repeats for any number of that size. Adding one more space, it goes into decimal notation and one less space does not occur any rounding. Could anyone explain why?
>>> a = '9556155829493979'
>>> a
'9556155829493979'
>>> len(a)
16
>>> float(a)
9556155829493980.0