「Python」ジェネレータ (generator)のサンプル
説明
ジェネレータ (generator)
構文
def reverse(data):
for index in range(len(data)-1, -1, -1):
yield data[index]
ジェネレータでできることは、前の節で解説したクラスを使ったイテレータでも実現できます。ジェネレータの定義がコンパクトになるのは __iter__() メソッドと __next__() メソッドが自動で作成されるからです。
サンプルコード
# coding: utf-8
#関数の定義
def cft():
yield "001"
yield "002"
yield "003"
yield "004"
ss = cft()
#cft関数を実行
print(next(ss))
print(next(ss))
print(next(ss))
結果
001
002
003
004