ジェネレータ関数とyield

イテレータを生成するための構文。
yieldで値を返却することで、関数が繰り返し処理を行う状態を保持できるようになる。

>>> def gentest():    #3つの文字列を返すgenerator関数
...   yield "hello"
...   yield "world"
...   yield "finish"
...
>>> [s for s in gentest()]   #繰り返し処理を行う
['hello', 'world', 'finish']

yieldを実行すると、値を返却しつつ、現在の処理を中断したまま保持するようなイメージ。

関連記事:

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

日本語が含まれない投稿は無視されますのでご注意ください。(スパム対策)