Встречается на собеседованиях • сегодня
Зачем нужен генератор
Генераторы в Python — это функции, которые возвращают итератор и позволяют лениво генерировать значения по одному, а не хранить их все в памяти сразу. Они полезны для работы с большими или бесконечными последовательностями данных, так как экономят память и вычисляют элементы только по требованию.
Ключевое отличие от обычных функций — использование yield вместо return. При вызове генератор возвращает объект-итератор, а выполнение функции приостанавливается до следующего вызова next().
Пример:
python
def count_up_to(max):
n = 1
while n <= max:
yield n
n += 1
counter = count_up_to(5)
print(next(counter)) # 1
print(next(counter)) # 2Основные преимущества:
- Экономия памяти (значения генерируются "на лету")
- Возможность работы с бесконечными потоками данных
- Удобство для конвейерной обработки данных (например, в сочетании с
map,filter)

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