Назад к вопросам
Junior — Middle
83
Можете объяснить, что представляет собой генератор в языке Python и как его использовать?
Ответ от нейросети
sobes.tech AI
Генератор в Python — это функция, которая возвращает итератор и позволяет последовательно выдавать значения с помощью ключевого слова yield. В отличие от обычной функции, которая возвращает все сразу, генератор «помнит» своё состояние между вызовами и выдаёт значения по одному.
Это удобно для работы с большими объемами данных или бесконечными последовательностями, так как генератор не загружает все данные в память.
Пример генератора, который выдаёт числа от 0 до n-1:
def count_up_to(n):
i = 0
while i < n:
yield i
i += 1
for number in count_up_to(5):
print(number)
Вывод:
0
1
2
3
4
Здесь yield приостанавливает выполнение функции, возвращая текущее значение, и возобновляет при следующем вызове.