イテレータオブジェクト (iterator object)¶
Python では二種類のイテレータオブジェクトを提供しています。一つ目はシーケンスイテレータで、 __getitem__() メソッドをサポートする任意のシーケンスを取り扱います。二つ目は呼び出し可能オブジェクトとセンチネル値 (sentinel value) を扱い、シーケンス内の要素ごとに呼び出し可能オブジェクトを呼び出して、センチネル値が返されたときに反復処理を終了します。
- 
PyTypeObject PySeqIter_Type¶
- PySeqIter_New()や、組み込みシーケンス型に対して 1 引数形式の組み込み関数- iter()を呼び出したときに返される、イテレータオブジェクトの型オブジェクトです。
- 
int PySeqIter_Check(op)¶
- op の型が - PySeqlter_Type型の場合に真を返します。この関数は常に成功します。
- 
PyObject* PySeqIter_New(PyObject *seq)¶
- Return value: New reference.一般的なシーケンスオブジェクト seq を扱うイテレータを返します。反復処理は、シーケンスが添字指定操作の際に IndexErrorを返したときに終了します。
- 
PyTypeObject PyCallIter_Type¶
- PyCallIter_New()や、組み込み関数- iter()の 2 引数形式が返すイテレータオブジェクトの型オブジェクトです。
- 
int PyCallIter_Check(op)¶
- op の型が - PyCallIter_Type型の場合に真を返します。この関数は常に成功します。