> How about > > itertools.chain(*zip(seq1, seq2, seq3, ...)) FWIW, this is faster (and nicer, IMO) than the suggestion I posted: [using the 'flatten' function posted] >>> flat.timeit() 8.434350455155613 [using my merge function] >>> merg.timeit() 7.6710651772781162 [using itertools.chain] >>> chai.timeit() 6.4707137359636491 =Tony Meyer