港服(Server.HK)Python教程:Cell 对象

Cell 对象 “Cell”对象用于实现由多个作用域引用的变量。 对于每个这样的变量,一个“Cell”对象为了存储该值而…

Cell 对象

“Cell”对象用于实现由多个作用域引用的变量。 对于每个这样的变量,一个“Cell”对象为了存储该值而被创建;引用该值的每个堆栈框架的局部变量包含同样使用该变量的对外部作用域的“Cell”引用。 访问该值时,将使用“Cell”中包含的值而不是单元格对象本身。 这种对“Cell”对象的非关联化的引用需要支持生成的字节码;访问时不会自动非关联化这些内容。 “Cell”对象在其他地方可能不太有用。

type PyCellObject

用于Cell对象的C结构体。

PyTypeObject PyCell_Type

与 Cell 对象对应的类型对​​象。

int PyCell_Check(ob)

如果 ob 是一个 cell 对象则返回真值;ob 必须不为 NULL。 此函数总是会成功执行。

PyObject *PyCell_New(PyObject *ob)

Return value: New reference.

创建并返回一个包含值 ob 的新 cell 对象。形参可以为 NULL

PyObject *PyCell_Get(PyObject *cell)

Return value: New reference.

返回 cell 对象 cell 的内容。

PyObject *PyCell_GET(PyObject *cell)

Return value: Borrowed reference.

返回 cell 对象 cell 的内容,但是不检测 cell 是否非 NULL 并且为一个 cell 对象。

int PyCell_Set(PyObject *cell, PyObject *value)

将 cell 对象 cell 的内容设为 value。 这将释放任何对 cell 对象当前内容的引用。 value 可以为 NULLcell 必须为非 NULL;如果它不是一个 cell 对象则将返回 -1。 如果设置成功则将返回 0

void PyCell_SET(PyObject *cell, PyObject *value)

将 cell 对象 cell 的值设为 value。 不会调整引用计数,并且不会进行检测以保证安全;cell 必须为非 NULL 并且为一个 cell 对象。

为您推荐

港服(Server.HK)Python教程:如何实现对Python中列表的排序?

对List进行排序,Python提供了两个方法 方法1.用List的内建函数list.sort进行排序 list.sor...

港服(Server.HK)Python教程:python迭代器中的函数整理

1、可以连接迭代器的函数 chain:按顺序将多个迭代器连接成一个迭代器。 Cycle:重复迭代器的所有元素。 Tee:...

港服(Server.HK)Python教程:用Python举例实现逆波兰表达式

逆波兰表达式是编译原理中的一种基本表达式,利用Python语言也可以实现逆波兰表达式的输出,这里举例实践说明: 什么是逆...

Python 程序:检查给定字符串是否为回文

港服(Server.HK)Python教程: 用一个实例写一个 Python 程序来检查给定的字符串是不是回文。在 Py...

港服(Server.HK)Python教程:python3判断字典中key是否存在

今天来说一下如何判断字典中是否存在某个key,一般有两种通用做法,下面为大家来分别讲解一下: 第一种方法:使用自带函数实...
返回顶部