Встречается на собеседованиях • сегодня
Зачем нужен yield вместо return в функциях в Python
yield превращает функцию в генератор, который возвращает значения по одному, сохраняя состояние между вызовами. Это полезно для работы с большими последовательностями без загрузки их в память целиком.
Пример:
python
def generate_numbers(n):
for i in range(n):
yield i
Использование:
for num in generate_numbers(5):
print(num) # Выводит 0, 1, 2, 3, 4 по одному
text
Ключевые отличия:
- Генератор с `yield` ленивый - вычисляет значения по требованию
- Сохраняет состояние между вызовами
- Экономит память для больших данных
- Позволяет создавать бесконечные последовательности
`return` завершает функцию полностью, возвращая одно значение, тогда как `yield` приостанавливает функцию, сохраняя локальные переменные для последующих вызовов.
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
офферы быстрее!
Попробовать бесплатно
Следующий вопрос
Это единственный вопрос по вашему фильтру
как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы