Iterator
Python (iterator) (sequence iterator) __getitem__() (callable) (sentinel value)
-
PyTypeObject PySeqIter_Type
- ABI .
-
int PySeqIter_Check(PyObject *op)
Return true if the type of op is
PySeqIter_Type. This function always succeeds.
-
PyObject *PySeqIter_New(PyObject *seq)
- ABI .
Return an iterator that works with a general sequence object, seq. The iteration ends when the sequence raises
IndexErrorfor the subscripting operation.
-
PyTypeObject PyCallIter_Type
- ABI .
Type object for iterator objects returned by
PyCallIter_New()and the two-argument form of theiter()built-in function.
-
int PyCallIter_Check(PyObject *op)
Return true if the type of op is
PyCallIter_Type. This function always succeeds.
-
PyObject *PyCallIter_New(PyObject *callable, PyObject *sentinel)
- ABI .
Return a new iterator. The first parameter, callable, can be any Python callable object that can be called with no parameters; each call to it should return the next item in the iteration. When callable returns a value equal to sentinel, the iteration will be terminated.
Range
-
PyTypeObject PyRange_Type
- ABI .
-
int PyRange_Check(PyObject *o)
Return true if the object o is an instance of a
rangeobject. This function always succeeds.
These are built-in iteration types that are included in Python's C API, but provide no additional functions. They are here for completeness.
These pointers are part of the Stable ABI.
C |
Python |
|---|---|
|
|
|
|
|
|
|
|
|
-
PyTypeObject PyByteArrayIter_Type
- ABI .
-
PyTypeObject PyBytesIter_Type
- ABI .
-
PyTypeObject PyListIter_Type
- ABI .
-
PyTypeObject PyListRevIter_Type
- ABI .
-
PyTypeObject PySetIter_Type
- ABI .
-
PyTypeObject PyTupleIter_Type
- ABI .
-
PyTypeObject PyRangeIter_Type
- ABI .
-
PyTypeObject PyLongRangeIter_Type
- ABI .
-
PyTypeObject PyDictIterKey_Type
- ABI .
-
PyTypeObject PyDictRevIterKey_Type
- ABI 3.8 .
-
PyTypeObject PyDictIterValue_Type
- ABI .
-
PyTypeObject PyDictRevIterValue_Type
- ABI 3.8 .
-
PyTypeObject PyDictIterItem_Type
- ABI .
-
PyTypeObject PyDictRevIterItem_Type
- ABI 3.8 .
-
PyTypeObject PyODictIter_Type
-
Do not create instances of these directly; prefer calling
PyObject_GetIter()instead.Note that there is no guarantee that a given built-in type uses a given iterator type. For example, iterating over
rangewill use one of two iterator types depending on the size of the range. Other types may start using a similar scheme in the future, without warning.