Junior — Middle
100
Ce se întâmplă în interiorul iteratorului în Python după ce s-a terminat parcurgerea elementelor unei secvențe?
Companiile au fost întrebate
Răspuns de la AI
sobes.tech AI
После того как итератор в Python перебирает все элементы последовательности, при следующем вызове метода __next__() он возбуждает исключение StopIteration. Это сигнализирует о том, что элементы закончились, и перебор завершён. Именно это исключение используется в цикле for для остановки итерации.
Пример:
it = iter([1, 2, 3])
print(next(it)) # 1
print(next(it)) # 2
print(next(it)) # 3
print(next(it)) # StopIteration
Таким образом, внутри итератора после окончания элементов происходит генерация исключения StopIteration, что позволяет корректно завершить перебор.