迭代器對象?
Python 提供了兩個通用迭代器對象。 第一個是序列迭代器,它使用支持 __getitem__()
方法的任意序列。 第二個使用可調(diào)用對象和一個 sentinel 值,為序列中的每個項調(diào)用可調(diào)用對象,并在返回 sentinel 值時結(jié)束迭代。
-
PyTypeObject PySeqIter_Type?
- Part of the Stable ABI.
PySeqIter_New()
返回迭代器對象的類型對象和內(nèi)置序列類型內(nèi)置函數(shù)iter()
的單參數(shù)形式。
-
int PySeqIter_Check(op)?
如果 op 的類型為
PySeqIter_Type
則返回真值。 此函數(shù)總是會成功執(zhí)行。
-
PyObject *PySeqIter_New(PyObject *seq)?
- Return value: New reference. Part of the Stable ABI.
返回一個與常規(guī)序列對象一起使用的迭代器 seq。 當(dāng)序列訂閱操作引發(fā)
IndexError
時,迭代結(jié)束。
-
PyTypeObject PyCallIter_Type?
- Part of the Stable ABI.
由函數(shù)
PyCallIter_New()
和iter()
內(nèi)置函數(shù)的雙參數(shù)形式返回的迭代器對象類型對象。
-
int PyCallIter_Check(op)?
如果 op 的類型為
PyCallIter_Type
則返回真值。 此函數(shù)總是會成功執(zhí)行。
-
PyObject *PyCallIter_New(PyObject *callable, PyObject *sentinel)?
- Return value: New reference. Part of the Stable ABI.
返回一個新的迭代器。 第一個參數(shù) callable 可以是任何可以在沒有參數(shù)的情況下調(diào)用的 Python 可調(diào)用對象;每次調(diào)用都應(yīng)該返回迭代中的下一個項目。 當(dāng) callable 返回等于 sentinel 的值時,迭代將終止。