Skip to content
Latchkey

ジェネレータとは何か?

ジェネレータは値を一度に一つずつ生成する特別な関数であり、各yieldの後に実行を中断し、次の値が要求されたときに中断した場所から再開します。これらの一時停止をまたいでローカルな状態を保ち、結果全体をメモリ上に構築しません。ジェネレータは、遅延的で必要に応じた並びを表現する便利な方法です。

なぜ重要か

値を遅延的に生成することで、ジェネレータは大きな、あるいは無限の並びを一定のメモリで扱えます。項目がどのように生成されるかと、消費側がどのように反復するかを、きれいに分離します。

関連ガイド