Итератор нужен для доступа к объектам без раскрытия внутреннего предоставления.
Существует два вида итераторов: внешний,внутренний.
Внешний итератор — когда процессом обхода управляет клиент, с помощью магического метода
__next__.Внутренний итератор — принимает callback функции и уведомляет клиента о получение следующего элемента.
Сам итератор это объект, который возвращает свои элементы по одному разу. В Python это любой объект у которого есть магический метод
__next__. Метод возвращает следующий элемент, если он существует, в другом случаи вернет StopIteration.Так-же у каждого итератора должна быть метод
__iter__, он возвращает сам итератор. Интерфейса итератора состоит из
first,next,current.first — возвращает итератор к началу агрегата,что-то вроде reset.next — переходит на следующий элемент агрегата, в случаи если нет следующего элемента, то будет StopIteration.current — возвращает текущий элемент.#Python #Итератор
