Уведомления

Группа в Telegram: @pythonsu

#1 Май 25, 2008 17:46:17

NoN
От:
Зарегистрирован: 2008-04-28
Сообщения: 17
Репутация: +  0  -
Профиль   Отправить e-mail  

Списки и числа с плавающей точкой.

Windows ,python 2.5.2
При добавлении числа с плавающей точкой (например 0.2) в список ,результат получается такой: 0.20000001
Как эта единица туда попадает? И как это исправить?
Код на котором пробовал

a=[]
a.append(0.2)
print a
или еще вод

n=[]
f=0.0
for i in xrange(0,20):
n.append(f)
f+=0.2
после цикла n содержит:



Отредактировано (Май 25, 2008 18:05:04)

Офлайн

#2 Май 25, 2008 18:42:36

Андрей Светлов
От:
Зарегистрирован: 2007-05-15
Сообщения: 3137
Репутация: +  14  -
Профиль   Адрес электронной почты  

Списки и числа с плавающей точкой.

Все нормально. 0.2 в двоичном вмде - бесконечная дробь. Так же как 1/3 в десятичном
>>> print str(0.2)
0.2
>>> print repr(0.2)
0.20000000000000001



Офлайн

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version