Урок Python 48: Генераторы и итераторы. Выражения-генераторы
Итераторы и генераторы в Python
Итератор Итератор - это объект, который поддерживает протокол итератора, то есть имеет методы iter() и next(). Метод iter() возвращает сам итератор, а метод next() возвращает следующее значение из последовательности или вызывает исключение StopIteration, если значения закончились. Итератор можно использовать в цикле for или с функцией next(). Примеры контейнеров, которые поддерживают протокол итератора: списки (list), строки (str), словари (dict), множества (set), файлы (file) и другие. Пример класса,...
Генераторы и итераторы в Python: как писать эффективный код
Привет! Сегодня поговорим о *генераторах и итераторах* — мощном инструменте Python, который позволяет работать с **огромными данными** без лишней памяти. --- 1. Итераторы: что это и зачем нужны? *Итератор* — это объект, который можно *перебрать в цикле* (`for`), но он не загружает все элементы в память сразу. Любой объект с методами `__iter__()` и `__next__()` является **итератором**. Пример: создадим итератор вручную class Counter: def __init__(self, start, end): self.current = start self.end = end def __iter__(self): return self # Итератор должен вернуть сам себя def __next__(self): if self...