johnzenger at gmail.com wrote: > def transform(seq, size): > i = 0 > while i < len(seq): > yield tuple(seq[i:i+size]) > i += size Or for arbitrary iterables, not just sequences: from itertools import islice def transform(iterable, size): it = iter(iterable) while True: window = tuple(islice(it,size)) if not window: break yield window George