В чем заключается назначение объектов, реализующих интерфейс итерации?

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

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

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

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

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

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

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

Интерфейс итерации включает методы __iter__() и __next__(). Объект-итератор возвращает следующий элемент при вызове next(), и сигнализирует об окончании последовательности исключением StopIteration.

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

Пример простого итератора:

class CountUpTo:
    def __init__(self, max):
        self.max = max
        self.current = 0

    def __iter__(self):
        return self

    def __next__(self):
        if self.current < self.max:
            self.current += 1
            return self.current
        else:
            raise StopIteration

for number in CountUpTo(5):
    print(number)

Здесь объект CountUpTo позволяет итерироваться по числам от 1 до 5.

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

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

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

Подробнее