迭代器對象?

Python 提供了兩個(gè)通用迭代器對象。 第一個(gè)是序列迭代器,它使用支持 __getitem__() 方法的任意序列。 第二個(gè)使用可調用對象和一個(gè) sentinel 值,為序列中的每個(gè)項調用可調用對象,并在返回 sentinel 值時(shí)結束迭代。

PyTypeObject PySeqIter_Type?
Part of the Stable ABI.

PySeqIter_New() 返回迭代器對象的類(lèi)型對象和內置序列類(lèi)型內置函數 iter() 的單參數形式。

int PySeqIter_Check(op)?

如果 op 的類(lèi)型為 PySeqIter_Type 則返回真值。 此函數總是會(huì )成功執行。

PyObject *PySeqIter_New(PyObject *seq)?
Return value: New reference. Part of the Stable ABI.

返回一個(gè)與常規序列對象一起使用的迭代器 seq。 當序列訂閱操作引發(fā) IndexError 時(shí),迭代結束。

PyTypeObject PyCallIter_Type?
Part of the Stable ABI.

由函數 PyCallIter_New()iter() 內置函數的雙參數形式返回的迭代器對象類(lèi)型對象。

int PyCallIter_Check(op)?

如果 op 的類(lèi)型為 PyCallIter_Type 則返回真值。 此函數總是會(huì )成功執行。

PyObject *PyCallIter_New(PyObject *callable, PyObject *sentinel)?
Return value: New reference. Part of the Stable ABI.

返回一個(gè)新的迭代器。 第一個(gè)參數 callable 可以是任何可以在沒(méi)有參數的情況下調用的 Python 可調用對象;每次調用都應該返回迭代中的下一個(gè)項目。 當 callable 返回等于 sentinel 的值時(shí),迭代將終止。