4 hundred quadrillonth?

Gary Herron gherron at islandtraining.com
Thu May 21 20:19:42 EDT 2009


MRAB wrote:
> Grant Edwards wrote:
>> On 2009-05-21, Christian Heimes <lists at cheimes.de> wrote:
>>> seanm.py at gmail.com schrieb:
>>>> The explaination in my introductory Python book is not very
>>>> satisfying, and I am hoping someone can explain the following to me:
>>>>
>>>>>>> 4 / 5.0
>>>> 0.80000000000000004
>>>>
>>>> 4 / 5.0 is 0.8. No more, no less. So what's up with that 4 at the end.
>>>> It bothers me.
>>> Welcome to IEEE 754 floating point land! :)
>>
>> Floating point is sort of like quantum physics: the closer you
>> look, the messier it gets.

+1 as QOTW


And just to add one bit of clarity:  This problem has nothing to do with 
the OP's division of 4 by 5.0, but rather that the value of 0.8 itself 
cannot be represented exactly in IEEE 754.  Just try

 >>> print repr(0.8)  # No division needed
'0.80000000000000004'

Gary Herron





>>
> I have the same feeling towards databases.




More information about the Python-list mailing list