for f in [0.0, 0.1, 10.0, 12345678.9, 123456789.0, 12345678912345.0, 12345678912345.6, 1.000000000001]: format = "%d" if f.is_integer() else "%s" print("%20r -> %s" % (f, (format % f)))
Standard input is empty
0.0 -> 0 0.1 -> 0.1 10.0 -> 10 12345678.9 -> 12345678.9 123456789.0 -> 123456789 12345678912345.0 -> 12345678912345 12345678912345.6 -> 1.23456789123e+13 1.000000000001 -> 1.0