Sobes.tech
Назад к вопросам
Junior — Middle
73

Какой результат будет получен при завершении выполнения функции-генератора в Python?

Ответ от нейросети

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 — это стандартный способ сообщить о завершении генератора.