Встречается на 2% собеседований по Python
В чем разница между функцией и генератором
Функция возвращает результат выполнения через return и завершает работу. Генератор использует yield, приостанавливает выполнение и сохраняет состояние между вызовами, возвращая значения по одному.
Ключевые отличия:
- Функция выполняется полностью за один вызов, генератор — по частям
- Генератор экономит память, так как не хранит все элементы сразу
- Генератор сохраняет состояние между вызовами
Пример функции:
python
def squares(n):
result = []
for i in range(n):
result.append(i**2)
return result # Возвращает весь список сразуПример генератора:
python
def squares_gen(n):
for i in range(n):
yield i**2 # Возвращает по одному значению при каждом вызовеГенераторы особенно полезны при работе с большими наборами данных или бесконечными последовательностями.

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