Ітератор об’єктів¶
Python provides two general-purpose iterator objects. The first, a sequence
iterator, works with an arbitrary sequence supporting the __getitem__()
method. The second works with a callable object and a sentinel value, calling
the callable for each item in the sequence, and ending the iteration when the
sentinel value is returned.
-
PyTypeObject
PySeqIter_Type
¶ Об’єкт типу для об’єктів-ітераторів, які повертає
PySeqIter_New()
, і форма з одним аргументом вбудованої функціїiter()
для вбудованих типів послідовностей.
-
int
PySeqIter_Check
(op)¶ Повертає true, якщо op має тип
PySeqIter_Type
. Ця функція завжди успішна.
-
PyObject*
PySeqIter_New
(PyObject *seq)¶ - Return value: New reference.
Повертає ітератор, який працює з об’єктом загальної послідовності seq. Ітерація завершується, коли послідовність викликає
IndexError
для операції підписання.
-
PyTypeObject
PyCallIter_Type
¶ Об’єкт типу для об’єктів-ітераторів, що повертаються
PyCallIter_New()
і формою з двома аргументами вбудованої функціїiter()
.
-
int
PyCallIter_Check
(op)¶ Повертає true, якщо тип op
PyCallIter_Type
. Ця функція завжди успішна.
-
PyObject*
PyCallIter_New
(PyObject *callable, PyObject *sentinel)¶ - Return value: New reference.
Повернути новий ітератор. Перший параметр, callable, може бути будь-яким викликаним об’єктом Python, який можна викликати без параметрів; кожен виклик має повертати наступний елемент ітерації. Коли callable повертає значення, рівне sentinel, ітерація буде припинена.