Chciałbym wiedzieć, jak przekonwertować ciąg zawierający cyfry na podwójny.
Chciałbym wiedzieć, jak przekonwertować ciąg zawierający cyfry na podwójny.
Odpowiedzi:
>>> x = "2342.34"
>>> float(x)
2342.3400000000001
Proszę bardzo. Użyj float (który zachowuje się jak i ma taką samą precyzję jak podwójne C, C ++ lub Java).
float('7.5606e-08')produkuje oczekiwany zmiennoprzecinkowy python.
>>> x = "2342.34" i konwertuję na zmiennoprzecinkowe >>> float(x) , otrzymuję 2342.34zamiast tego 2342.3400000000001zgłoszenie @Mongoose
>>> 0.1 + 0.2do podwójnego. >>> 0.1 + 0.6do pływaka.
Pamiętaj, że jeśli Twój ciąg znaków zawiera więcej niż 15 cyfr znaczących float(s), zaokrągli go. W takich przypadkach lepiej jest użyćDecimal
Oto wyjaśnienie i kilka przykładów kodu: https://docs.python.org/3/library/sys.html#sys.float_info