Python-design-patterns-iterator

提供:Dev Guides
移動先:案内検索

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コードは、反復子パターンに従います。 ここでは、カウントを開始するためにインクリメント演算子が使用されます。 カウントは、ユーザーによる強制終了で終了します。