「Python」ジェネレータ (generator)のサンプル

2020年10月9日

説明
ジェネレータ (generator)
構文
def reverse(data):
for index in range(len(data)-1, -1, -1):
yield data[index]
ジェネレータでできることは、前の節で解説したクラスを使ったイテレータでも実現できます。ジェネレータの定義がコンパクトになるのは __iter__() メソッドと __next__() メソッドが自動で作成されるからです。
サンプルコード

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
# 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))
# 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))
# 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

Python

Posted by arkgame