Sobes.tech
Back to questions
Junior — Middle
61

Можете объяснить, что представляет собой протокол итератора и как он используется в программировании?

Answer from AI

sobes.tech AI

Протокол итератора в программировании — это соглашение, которое определяет, как объект должен предоставлять последовательный доступ к своим элементам. В Python итератор — это объект, который реализует методы __iter__() и __next__().

  • Метод __iter__() возвращает сам итератор.
  • Метод __next__() возвращает следующий элемент последовательности или вызывает исключение StopIteration, если элементы закончились.

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

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

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)