iteratorは遅延リストの代わりにはならないよ

Pythonイテレータは、itertools — Functions creating iterators for efficient looping — Python 3.7.3 documentationみたいなモジュールがあるくらいだし、わりと遅延リストの代わりに使える。
でも、やっぱりイテレータイテレータであって、遅延リストじゃない。

例えば、同じイレレータをizipすると結果が変になっちゃう。

>>> from itertools import *
>>> f = open('test')
>>> list(izip(f,f))
[('1\n', '2\n'), ('3\n', '4\n'), ('5\n', '6\n')]

まあ、しょうがないよね。