Шаблоны проектирования 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 следует шаблону итератора. Здесь для начала счета используются операторы приращения. Счетчик заканчивается при принудительном завершении пользователем.