[Python-Dev] xrange vs generators
Thomas Heller
thomas.heller@ion-tof.com
Mon, 25 Jun 2001 16:37:31 +0200
> > With generators in the language, should xrange be deprecated?
> >
> > Skip
>
> No, but maybe xrange() should be changed to return an iterator.
> E.g. something like this:
>
> def xrange(start, stop, step):
> while start < stop:
> yield start
> start += stop
>
> but with the appropriate defaults, and reversal of the test if step <
> 0, and an error if step == 0, and type checks enforcing ints (or long
> ints!), and implemented in C. :-)
>
> Although xrange() objects currently support some sequence algebra,
> that is mostly bogus and I don't think anyone in their right mind uses
> it.
I _was_ using xrange as sets representing (potentially large)
ranges of ints.
Example:
positive = xrange(1, sys.maxint)
if num in positive:
...
I didt follow the iterators discussion: would this
continue to work?
Thomas