[Tutor] iterating over a sequence question..

Iyer maseriyer at yahoo.com
Sun Jun 17 08:59:47 CEST 2007

say, if I have a list l = [1,2,3,5]

and another tuple t = ('r', 'g', 'b')

Suppose I iterate over list l, and t at the same time, if I use the zip function as in zip(l,t) , I will not be able to cover elements 3 and 5 in list l

>>> l = [1,2,3,5]
>>> t = ('r', 'g', 'b')
>>> for i in zip(l,t):
...     print i
(1, 'r')
(2, 'g')
(3, 'b')

is there an elegant way in python to print all the elements in l, while looping over list t, if len(t) != len(l) as to get the output:

(1, 'r')
 (2, 'g')
 (3, 'b')
(5, 'r')

I could iterate over l only and reset the index to point to the first element of t, in case the elements in t are "exhausted" . Any pythonic way to iterate over a sequence, while iterating over another shorter sequence continously (granted that the lengths of the two lists are different)?

Fussy? Opinionated? Impossible to please? Perfect.  Join Yahoo!'s user panel and lay it on us.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://mail.python.org/pipermail/tutor/attachments/20070616/c0f1c047/attachment.html 

More information about the Tutor mailing list