Iterator встроен в Python на уровне языка. __iter__() возвращает итератор, __next__() — следующий элемент, StopIteration — конец. for цикл автоматически вызывает iter() и next(). Генераторы — самый простой способ создать итератор: yield вместо return. itertools — библиотека готовых итераторов: chain, zip_longest, product, combinations. Можно создать бесконечный итератор: count(), cycle(). Ленивые вычисления — главное преимущество, не грузишь всё в память. Протокол итератора — один из ключевых в Python.
Как паттерн Iterator реализован в Python?
Middle
299 просмотровAFK Offer AI
Чем dict отличается от defaultdict?