Точность с плавающей запятой в массиве Python

Прошу прощения за действительно простой и глупый вопрос; Однако почему в этих двух случаях отображается разница в точности?

1)

>> test = numpy.array([0.22])
>> test2 = test[0] * 2
>> test2
0.44

2)

>> test = numpy.array([0.24])
>> test2 = test[0] * 2
>> test2
0.47999999999999998

Я использую python2.6.6 на 64-битном Linux. Заранее благодарю вас за вашу помощь.

Это также справедливо для списка в python

>>> t = [0.22]
>>> t
[0.22]

>>> t = [0.24]
>>> t
[0.23999999999999999]
5
задан Eric 1 March 2011 в 21:21
поделиться