Python Design Patterns 简明教程

Python Design Patterns - Iterator

迭代器设计模式属于行为设计模式类别。开发人员几乎在每种编程语言中都会碰到迭代器模式。此模式以这种方式使用,它有助于按顺序访问集合(类)的元素,而无需理解底层设计。

How to implement the iterator pattern?

现在,我们将了解如何实现迭代器模式。

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")

Output

上述程序生成以下输出 −

iterator

如果您关注该模式,将使用迭代器模式打印斐波纳契数列。在用户强制结束时,将打印以下输出 -

fibonacci series

Explanation

此 Python 代码遵循迭代器模式。此处,递增运算符用于启动计数。计数在用户强制结束时结束。