[Python-Dev] Re: PEP 322: Reverse Iteration
Mark Russell
marktrussell at btopenworld.com
Wed Nov 5 11:48:31 EST 2003
On Wed, 2003-11-05 at 15:56, Alex Martelli wrote:
> def reversed(sequence):
> for x in xrange(len(sequence)-1, -1, -1): yield sequence[x]
>
> no __reversed__, no complications, "no nuttin'".
If I was adding this as a library routine, I'd do:
def reversed(sequence):
try:
seqlen = len(sequence)
except TypeError:
sequence = list(sequence)
seqlen = len(sequence)
for x in xrange(seqlen-1, -1, -1):
yield sequence[x]
OK, inefficient for iterators on long sequences, but it works with
enumerate() etc and needs no changes to existing types.
Mark
More information about the Python-Dev
mailing list