Что означает ключевое слово yield в Python
Python
Senior
Без компании
Что означает ключевое слово yield в Python
Ответы
Ключевое слово `yield` используется в функциях для создания генераторов. В отличие от `return`, который завершает выполнение функции и возвращает значение, `yield` приостанавливает выполнение функции, сохраняет её состояние и возвращает значение. При следующем вызове функция продолжает выполнение с того места, где она была приостановлена.
Пример:
```
def count_up_to(n):
i = 1
while i <= n:
yield i
i += 1
# Использование генератора
counter = count_up_to(3)
print(next(counter)) # 1
print(next(counter)) # 2
print(next(counter)) # 3
```
Преимущества:
- Ленивые вычисления (генерирует значения по требованию)
- Экономия памяти (не хранит все значения в памяти сразу)
- Возможность работы с бесконечными последовательностями