Welcome, guest | Sign In | My Account | Store | Cart
from itertools import cycle, islice

def roundrobin(*iterables):
    pending
= len(iterables)
    nexts
= cycle(iter(iterable).next for iterable in iterables)
   
while pending:
       
try:
           
for next in nexts: yield next()
       
except StopIteration:
            pending
-= 1
            nexts
= cycle(islice(nexts, pending))

History