Встречается на собеседованиях • сегодня

Какое исключение выбрасывается при завершении итерации

При завершении итерации в Python выбрасывается исключение StopIteration. Оно сигнализирует, что итератор исчерпал все элементы.

Пример:

python
my_list = [1, 2, 3]
my_iter = iter(my_list)

print(next(my_iter))  # 1
print(next(my_iter))  # 2
print(next(my_iter))  # 3
print(next(my_iter))  # Вызовет StopIteration

В генераторах StopIteration возникает автоматически при выходе из функции-генератора. Можно явно вызвать его с помощью return:

python
def gen():
    yield 1
    return  # Неявно вызывает StopIteration

В Python 3.7+ StopIteration было заменено на RuntimeError при использовании в генераторах, чтобы избежать непреднамеренного подавления исключений.

Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

Следующий вопрос

Это единственный вопрос по вашему фильтру

как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы