anonymous assignment
Terry Reedy
tjreedy at udel.edu
Mon May 12 18:43:49 EDT 2008
"Arnaud Delobelle" <arnodel at googlemail.com> wrote in message
news:c689625d-b2d2-4268-ae40-15e3c9b78ea2 at x41g2000hsb.googlegroups.com...
here is a very sophisticated implementation :)
>>> def extract(indices, seq):
... return tuple(seq[i] for i in indices)
...
>>> y, d = extract((0, 2), time.localtime())
>>> y, d
(2008, 12)
===================
Or a generator version:
# 3.0
def extract(iterable, indexes):
# assume indexes are all legal
enext = enumerate(iterable).__next__
i,item = enext()
for index in indexes:
while i < index:
i,item = enext()
yield item
import time
print(list(extract(time.localtime(), (0,2))))
#prints [2008, 12]
More information about the Python-list
mailing list