PEP 260: simplify xrange()
Dinu Gherman
gherman at darwin.in-berlin.de
Thu Jun 28 03:35:11 EDT 2001
Tim Peters wrote:
>
> >>> print len(frange(0.0, 1.0, 0.1))
> 11
> >>>
>
> That's the kind of "inexplicable" crap we don't want to have to try to
> explain <wink>: repeated addition is a Bad Idea for floats.
IMHO this is not Python's fault, and all other languages that
don't rely on some sort of symbolic algebra should show the
same "phenomenon".
> You can improve the numeric quality of the results by generating via
> [...]
> instead (repeated addition accumulates rounding errors without bound; the
> alternative suffers no more than 2 rounding errors (total) for each element
> produced). Then it returns 10 elements in the example above.
This is an obvious improvement - thanks!
Dinu
More information about the Python-list
mailing list