Зачем нужен итератор

Python Junior Без компании
Зачем нужен итератор
Ответы
Итератор в Python — это объект, который позволяет последовательно получать элементы из коллекции без необходимости знать её внутреннюю структуру. Он реализует два метода: - `__iter__()` — возвращает сам итератор. - `__next__()` — возвращает следующий элемент или вызывает `StopIteration`, если элементы закончились. **Основные преимущества:** - **Ленивые вычисления** — элементы обрабатываются по одному, что экономит память. - **Универсальность** — единый интерфейс для работы с разными коллекциями (списки, словари, файлы и т.д.). **Пример:** ``` class Counter: def __init__(self, max_num): self.max_num = max_num def __iter__(self): self.current = 0 return self def __next__(self): if self.current < self.max_num: self.current += 1 return self.current raise StopIteration for num in Counter(3): print(num) # 1, 2, 3 ``` Итераторы используются в `for`, генераторах и функциях типа `map()`, `filter()`.