無限リストの停止条件

>>> from itertools import *
>>> # 通常こうする
>>> for x in islice(count(), 3)
...     print x
0
1
2
>>> # izipを利用する
>>> for x,i in izip(count(), xrange(3))
...     print x
0
1
2

途中の要素をスライスする場合は使えないが、個数分取り出すときに、izipの短い方のリストに長さを合わせるという特性を利用して、後者のような書き方ができる。どっちにしろあまりきれいな書き方には思えないが仕方ないのかも。