Встречается на собеседованиях • сегодня
Почему нельзя сделать генератор с помощью return в Python
Генераторы в Python используют yield вместо return, потому что yield сохраняет состояние функции между вызовами, позволяя ей возобновлять выполнение с того же места. return же завершает функцию полностью, освобождая все локальные переменные и возвращая управление вызывающей стороне.
Пример с yield:
python
def my_generator():
yield 1
yield 2
yield 3
gen = my_generator()
print(next(gen)) # 1
print(next(gen)) # 2Если бы использовался return, функция завершилась бы после первого вызова, и последующие значения были бы недоступны. Генераторы работают по принципу ленивых вычислений, экономя память.

Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
офферы быстрее!
Попробовать бесплатно
Следующий вопрос
Это единственный вопрос по вашему фильтру
как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы