Объекты итераторов
Python предоставляет два универсальных объекта итератора. Первый, итератор последовательности, работает с произвольной последовательностью, поддерживающей метод __getitem__(). Второй работает с вызываемым объектом и значением-сентинелом, вызывая вызываемый объект для каждого элемента в последовательности и завершая итерацию, когда возвращается значение-сентинел.
-
PyTypeObject PySeqIter_Type -
Часть Стабильной ABI.
Тип объекта итератора, возвращаемого функциями
PySeqIter_New()и одноаргументной формой встроенной функцииiter()для встроенных типов последовательностей.
-
int PySeqIter_Check(op) -
Возвращает True, если тип op равен
PySeqIter_Type. Эта функция всегда выполняется успешно.
-
PyObject *PySeqIter_New(PyObject *seq) -
Возвращаемое значение: Новый ссылка. Часть Стабильной ABI.
Возвращает итератор, работающий с общим объектом последовательности seq. Итерация завершается, когда последовательность вызывает исключение
IndexErrorдля операции индексирования.
-
PyTypeObject PyCallIter_Type -
Часть Стабильной ABI.
Тип объекта итератора, возвращаемого функциями
PyCallIter_New()и двухаргументной формой встроенной функцииiter().
-
int PyCallIter_Check(op) -
Возвращает True, если тип op равен
PyCallIter_Type. Эта функция всегда выполняется успешно.
-
PyObject *PyCallIter_New(PyObject *callable, PyObject *sentinel) -
Возвращаемое значение: Новый ссылка. Часть Стабильной ABI.
Возвращает новый итератор. Первый параметр, callable, может быть любым вызываемым объектом Python, который можно вызвать без параметров; каждый вызов должен возвращать следующий элемент в итерации. Когда callable возвращает значение, равное sentinel, итерация завершается.
© 2001–2023 Python Software Foundation
Licensed under the PSF License.
https://docs.python.org/3.10/c-api/iterator.html