Python には、yield 式と呼ばれる少し奇妙な式があります。この記事では、それが何であるかを説明します。一歩ずつ進めていきましょう。
反復可能
マイリストは、各項目を 1 つずつ取り出すことができます。このプロセスはイテレーションと呼ばれます。 「for...in...」を使用して順番に走査できるリストのようなオブジェクトはイテラブルと呼ばれます。その他のイテラブルには、文字列、タプル、辞書などが含まれます。 iterable の特徴の 1 つは、すべての項目がメモリに格納されることですが、これによっていくつかの不都合や欠点が生じるため、ジェネレーター (後述) が生まれました。
リスト内包表記 (リスト内包表記)
ジェネレーター
上記のリストの内包表記を少し変更します:
Generator も iterable に属しますが、その呼び出し方法は非常に特殊です。
収量
mygenerator の x の場合:
印刷(x)