Для чего нужен генератор в Python
Python
Middle
Evapps
Для чего нужен генератор в Python
Ответы
Генераторы в Python позволяют создавать итераторы без необходимости писать полноценный класс с методами `__iter__()` и `__next__()`. Они экономят память, так как генерируют элементы "на лету", а не хранят всю последовательность в памяти.
**Пример:**
```
def countdown(n):
while n > 0:
yield n
n -= 1
for num in countdown(5):
print(num) # 5, 4, 3, 2, 1
```
**Ключевые преимущества:**
- Ленивые вычисления (элементы генерируются по запросу).
- Экономия памяти (особенно полезно для больших данных).
- Удобство синтаксиса (проще, чем реализация итератора вручную).
Генераторы часто используются в циклах `for`, с функциями `next()`, а также в генераторных выражениях (`(x**2 for x in range(10))`).