单元对象

“cell”对象用于实现多个作用域引用的变量。对于每一个这样的变量,都会创建一个单元格对象来存储该值;引用该值的每个堆栈帧的局部变量包含对来自外部作用域的单元格的引用,外部作用域也使用该变量。访问该值时,将使用单元中包含的值,而不是单元对象本身。单元对象的这种反引用需要来自生成的字节代码的支持;访问这些代码时不会自动取消引用。单元格对象在其他地方不太可能有用。

type PyCellObject

用于单元格对象的C结构。

PyTypeObject PyCell_Type

与单元格对象对应的类型对象。

int PyCell_Check(ob)

如果满足以下条件,则返回TRUE ob 是单元格对象; ob 一定不能是 NULL 。此功能总是成功的。

PyObject *PyCell_New(PyObject *ob)
Return value: New reference.

创建并返回包含值的新单元格对象 ob . 参数可以是 NULL .

PyObject *PyCell_Get(PyObject *cell)
Return value: New reference.

返回单元格内容 cell .

PyObject *PyCell_GET(PyObject *cell)
Return value: Borrowed reference.

返回单元格内容 cell 但是没有检查 cell 是非“NULL”和单元格对象。

int PyCell_Set(PyObject *cell, PyObject *value)

设置单元格对象的内容 cell价值 . 这将释放对单元格任何当前内容的引用。 价值 可能是 NULL . cell 必须是非-NULL`;如果不是单元格对象, ``-1 将被退回。关于成功, 0 将被退回。

void PyCell_SET(PyObject *cell, PyObject *value)

设置单元格对象的值 cell价值 . 未调整参考计数,未进行安全检查; cell 必须是非-``空',并且必须是单元格对象。