Antworten:
>>> x = "2342.34"
>>> float(x)
2342.3400000000001
Los geht's. Verwenden Sie float (das sich wie ein C-, C ++ - oder Java-Double verhält und dieselbe Genauigkeit hat).
float('7.5606e-08')Erzeugt den erwarteten Python-Float.
>>> x = "2342.34" und konvertieren zu schweben >>> float(x) Ich werde 2342.34stattdessen die 2342.3400000000001von @Mongoose berichtet
>>> 0.1 + 0.2für doppelt. >>> 0.1 + 0.6für float.
float(s)Beachten Sie, dass wenn Ihre Zeichenfolgenummer mehr als 15 signifikante Ziffern enthält, diese gerundet wird. In diesen Fällen ist es besser, sie zu verwendenDecimal
Hier finden Sie eine Erklärung und einige Codebeispiele: https://docs.python.org/3/library/sys.html#sys.float_info