生成器物件

生成器物件是 Python 用於實現生成器迭代器的方式。它們通常透過迭代一個產生值的函式來建立,而不是顯式呼叫 PyGen_New()PyGen_NewWithQualName()

type PyGenObject

用於生成器物件的 C 結構體。

PyTypeObject PyGen_Type

對應生成器物件的型別物件。

int PyGen_Check(PyObject *ob)

如果 ob 是一個生成器物件,則返回 true;ob 不得為 NULL。此函式始終成功。

int PyGen_CheckExact(PyObject *ob)

如果 ob 的型別是 PyGen_Type,則返回 true;ob 不得為 NULL。此函式始終成功。

PyObject *PyGen_New(PyFrameObject *frame)
返回值:新引用。

基於 frame 物件建立並返回一個新的生成器物件。此函式會竊取 frame 的引用。引數不得為 NULL

PyObject *PyGen_NewWithQualName(PyFrameObject *frame, PyObject *name, PyObject *qualname)
返回值:新引用。

基於 frame 物件建立並返回一個新的生成器物件,其中 __name____qualname__ 分別設定為 namequalname。此函式會竊取 frame 的引用。frame 引數不得為 NULL