Почему python иногда расширяет числа и есть способ остановить его? Например, 1.7 может превратиться в 1.70000005. В частности, я сталкиваюсь с этим, беря в списке поплавки и пытаясь заполнить новый список.Python, продолжающий десятичные знаки
newList = []
for value in myList:
print value
newList.append(value)
return newList
Консоль распечатает номера, не содержащие более 2-х знаков после запятой, а NewList возвращается будет иметь 17 место, и часто включает в последней цифре ненулевой. Он делает это, даже если я пытаюсь округлить (значение, 2) внутри цикла.
http://docs.python.org/2/tutorial/floatingpoint.html –
Арифметика с плавающей точкой - бессердечная любовница :) –
Если вам нужен точный контроль с плавающей запятой, используйте встроенный десятичный модуль: http: // docs.python.org/2/library/decimal.html –