Что такое итераторы в Python? Какой магический метод реализует итератор? Как происходит перемещение к следующему элементу? Что будет, если пройтись по итератору второй раз?

Итератор в Python — это объект, который позволяет последовательно проходить по элементам коллекции без необходимости знать внутреннюю структуру.

Короткий ответ

Что ответить на собеседовании

Итератор в Python — это объект, который позволяет последовательно проходить по элементам коллекции без необходимости знать внутреннюю структуру.

Подробный разбор

Ответ с пояснениями

Итератор в Python — это объект, который позволяет последовательно проходить по элементам коллекции без необходимости знать внутреннюю структуру.

Итератор реализует методы iter() и next(). Когда вызывается функция iter() на коллекции, возвращается итератор, а вызов next() последовательно возвращает элементы, пока не будет достигнут конец, после чего возбуждается исключение StopIteration.

Итераторы широко используются в циклах for, генераторах и при работе с потоками данных.

Пример:

my_list = [1, 2, 3]
iterator = iter(my_list)
print(next(iterator))  # 1
print(next(iterator))  # 2
print(next(iterator))  # 3
# Следующий вызов next(iterator) вызовет StopIteration

ИИ-помощник для собеседований

Хочешь уверенно проходить собеседования?

Попробуй ИИ-помощник для собеседований: слышит вас и собеседника, анализирует экран, подсказывает ответы в реальном времени, работает без VPN и не попадает в захват экрана.

Подробнее