XXX = range(4) print [i for i in XXX] print print [i for i in (1, 2, 3, 4)] print print [(i, 1) for i in XXX] print print [i * 2 for i in range(4)] print print [i * j for i in range(4) for j in range(7)] print [i * 2 for i in range(4) if i == 0] print [(i, i ** 2) for i in range(4) if i % 2 == 0] print [i * j for i in range(4) if i == 2 for j in range(7) if i + (i % 2) == 0] seq1 = 'abc' seq2 = (1, 2, 3) [(x, y) for x in seq1 for y in seq2] def flatten(seq): return [x for subseq in seq for x in subseq] print flatten([[0], [1, 2, 3], [4, 5], [6, 7, 8, 9], []])