Шаблон проектирования итератора подпадает под категорию поведенческих шаблонов проектирования. Разработчики сталкиваются с шаблоном итератора практически на каждом языке программирования. Этот шаблон используется таким образом, что он помогает получить последовательный доступ к элементам коллекции (класса) без понимания структуры нижележащего уровня.
Как реализовать шаблон итератора?
Теперь мы увидим, как реализовать шаблон итератора.
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 следует шаблону итератора. Здесь операторы приращения используются для начала подсчета. Счет заканчивается после принудительного завершения пользователем.