On Jun 29, 1:37 am, Tom Evans <tevans...@googlemail.com> wrote:
> Damn, this was the bit I meant to comment upon - hard and fast rules
> are dangerous. Integral types are distinctly different to floating
> point types, and you should be aware of which one you are using and
> why. You definitely should not be using floats when you require
> integral mathematics, or reliable accounting since 1.0 is only an
> approximation to 1.
>
> Cheers
>
> Tom
>
> >>> 1.0 * 10000000000000000000000000000
>
> 9.9999999999999996e+27

Actually, 1.0 is NOT an approximation to 1.  It is precisely 1.  All
integral values up to 2^53-1 can be represented exactly.  So can many
rational fractions (roughly, those in which the denominator is a power
of two and the numerator and denominator don't differ by a really big
ratio).

The reason the above example fails isn't the 1.0, it's because the
second number (10^28) is bigger than 2^53, so IT can't be represented
exactly.

-- 
You received this message because you are subscribed to the Google Groups 
"Django users" group.
To post to this group, send email to django-users@googlegroups.com.
To unsubscribe from this group, send email to 
django-users+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/django-users?hl=en.

Reply via email to