無限要素を生成できる単純なジェネレータ式はありますか?
これは純粋に理論的な質問です。ここに「実用的な」答えは必要ありません:)
たとえば、有限ジェネレータを作成するのは簡単です。
my_gen = (0 for i in xrange(42))
ただし、無限のものを作成するには、偽の関数で名前空間を「汚染」する必要があります。
def _my_gen():
while True:
yield 0
my_gen = _my_gen()
別のファイルで処理を行い、import
後で-ing することは考慮されません。
私はそれitertools.repeat
がまさにこれを行うことも知っています。それなしでワンライナーソリューションがあるかどうか私は興味があります。
del _my_gen
2つを混同したくない場合にも使用できます
my_gen
ませんmy_gen = my_gen()
。関数に名前を付けてから実行してください。