Back to questions
Junior — Middle
72
Какой результат будет получен при завершении выполнения функции-генератора в Python?
Answer from AI
sobes.tech AI
При завершении выполнения функции-генератора в Python происходит возбуждение исключения StopIteration. Это сигнализирует, что генератор исчерпал все свои значения и больше не может выдавать новые.
Если вы итерируетесь по генератору в цикле for, это исключение обрабатывается автоматически, и цикл завершается.
Пример:
def gen():
yield 1
yield 2
g = gen()
print(next(g)) # Выведет 1
print(next(g)) # Выведет 2
print(next(g)) # Возбуждает StopIteration
Таким образом, StopIteration — это стандартный способ сообщить о завершении генератора.