Pythonデザインパターン-イテレータ
イテレータデザインパターンは、ビヘイビアデザインパターンカテゴリに分類されます。開発者は、ほぼすべてのプログラミング言語でイテレーターパターンに出くわします。このパターンは、基になるレイヤーデザインを理解していなくても、コレクション(クラス)の要素に順番にアクセスするのに役立つように使用されます。
イテレーターパターンを実装する方法は?
ここで、イテレーターパターンを実装する方法を説明します。
import time
def fib():
a, b = 0, 1
while True:
yield b
a, b = b, a + b
g = fib()
try:
for e in g:
print(e)
time.sleep(1)
except KeyboardInterrupt:
print("Calculation stopped")
出力
上記のプログラムは次の出力を生成します-

パターンに注目すると、フィボナッチ数列はイテレーターパターンでプリントされています。ユーザーを強制終了すると、次の出力が出力されます-

説明
このPythonコードは、イテレーターパターンに従います。ここでは、インクリメント演算子を使用してカウントを開始します。カウントは、ユーザーによる強制終了で終了します。