イテレータオブジェクト
Pythonは、2つの汎用イテレータオブジェクトを提供します。 最初のシーケンスイテレータは、__getitem__()
メソッドをサポートする任意のシーケンスで動作します。 2つ目は、呼び出し可能オブジェクトと番兵値を処理し、シーケンス内の各アイテムの呼び出し可能値を呼び出し、番兵値が返されたときに反復を終了します。
- PyTypeObject PySeqIter_Type
PySeqIter_New()によって返されるイテレータオブジェクトの型オブジェクトと、組み込みシーケンス型の iter()組み込み関数の1つの引数形式。
バージョン2.2の新機能。
- int PySeqIter_Check(op)
op のタイプが PySeqIter_Type の場合はtrueを返します。
バージョン2.2の新機能。
- PyObject *PySeqIter_New(PyObject *seq)
一般的なシーケンスオブジェクト seq で機能するイテレータを返します。 シーケンスが添え字操作のために
IndexError
を上げると、反復は終了します。バージョン2.2の新機能。
- PyTypeObject PyCallIter_Type
PyCallIter_New()によって返されるイテレーターオブジェクトのタイプオブジェクトと、 iter()組み込み関数の2つの引数形式。
バージョン2.2の新機能。
- int PyCallIter_Check(op)
op のタイプが PyCallIter_Type の場合はtrueを返します。
バージョン2.2の新機能。
- PyObject *PyCallIter_New(PyObject *callable, PyObject *sentinel)
新しいイテレータを返します。 最初のパラメーター callable は、パラメーターなしで呼び出すことができる任意のPython呼び出し可能オブジェクトにすることができます。 それを呼び出すたびに、反復の次の項目が返されます。 callable が sentinel に等しい値を返すと、反復は終了します。
バージョン2.2の新機能。