Прежде чем иметь дело с итераторами и итераторами, основным фактором, определяющим итерируемость и итератор, является последовательность
Последовательность: последовательность - это сбор данных
Итерируемая: итерируемые объекты типа последовательности, которыеподдержка метода Iter.
метод Iter: метод Iter принимает последовательность в качестве входных данных и создает объект, известный как итератор
итератор: итератор - это объект, вызывающий следующий метод и проходящий через последовательность. При вызове следующего метода он возвращает объект, который он прошел в данный момент.
пример:
x=[1,2,3,4]
x - это последовательность, состоящая из набора данных
y=iter(x)
При вызове iter (x) он возвращает итератор, только если у объекта x есть метод iter, в противном случае он вызывает исключение. Если он возвращает итератор, то y присваивается следующим образом:
y=[1,2,3,4]
Поскольку y является итераторомследовательно, он поддерживает метод next ()
При вызове метода next он возвращает отдельные элементы списка по одному.
После возврата последнего элемента последовательности, если мы снова вызываем следующий метод, возникает ошибка StopIteration
пример:
>>> y.next()
1
>>> y.next()
2
>>> y.next()
3
>>> y.next()
4
>>> y.next()
StopIteration