Pythonでは、ジェネレータを拡張するためにitertools.chain()
関数を使用できます。この関数は複数のイテラブルを引数に取り、それぞれから順に要素を生成します。
以下に具体的な使用例を示します。
from itertools import chain
def generator1():
for item in 'abcdef':
yield item
def generator2():
for item in '123456':
yield item
generator3 = chain(generator1(), generator2())
for item in generator3:
print(item)
このコードでは、generator1
とgenerator2
という2つのジェネレータを定義しています。それぞれが異なるシーケンスを生成します。itertools.chain()
関数を使用して、これらのジェネレータを連結します。
この方法を使用すると、2つのジェネレータを効率的に連結することができます。この機能は、大量のデータを扱う際に特に役立ちます。なぜなら、ジェネレータはイテレータの一種であり、要素を必要に応じてジェネレートするため、メモリ効率が良いからです。
以上がPythonでジェネレータを拡張する方法についての説明です。この情報がPythonの理解と使用に役立つことを願っています。