3.0のメモ
- C:\Python30\Lib\test\test_itertools.pyからのメモ
>>> from itertools import * >>> >>> seq = range(4) >>> a, b = tee(seq) >>> next(b) 0 >>> list(zip(a, cycle(b))) [(0, 1), (1, 2), (2, 3), (3, 1)] >>> >>> seq = [1, 2, 3] >>> pairs = [(2**i, x) for i, x in enumerate(seq)] >>> for n in range(2**len(pairs)): ... print([x for m, x in pairs if m&n]) ... [] [1] [2] [1, 2] [3] [1, 3] [2, 3] [1, 2, 3] >>> >>> def take(n, iterable): ... return list(islice(iterable, n)) ... >>> take(5, count()) [0, 1, 2, 3, 4]