Rob Williscroft wrote in news:Xns984ACDA635C9rtwfreenetREMOVEcouk@ 216.196.109.145 in comp.lang.python:
>>>> seq = range(11) >>>> zip(seq[::2], seq[1::2] + [None]) > [(0, 1), (2, 3), (4, 5), (6, 7), (8, 9), (10, None)] > >>>> seq = range(10) >>>> zip(seq[::2], seq[1::2] + [None]) > [(0, 1), (2, 3), (4, 5), (6, 7), (8, 9)] For bigger sequences: >>> import itertools as it >>> seq = range(11) >>> even = it.islice( seq, 0, None, 2 ) >>> odd = it.islice( seq, 1, None, 2 ) >>> zipped = it.izip( even, it.chain( odd, [None] ) ) >>> list( zipped ) [(0, 1), (2, 3), (4, 5), (6, 7), (8, 9), (10, None)] Rob. -- http://www.victim-prime.dsl.pipex.com/ -- http://mail.python.org/mailman/listinfo/python-list