Tuple Objects

返回一个新的 Tuples 对象,大小为* len *,失败时返回NULL

返回一个大小为* n 的新 Tuples 对象,如果失败则返回NULL。Tuples 值被初始化为指向 Python 对象的后续 n * C 参数。 PyTuple_Pack(2, a, b)等效于Py_BuildValue("(OO)", a, b)

返回* p 指向的 Tuples 中 pos 位置的对象。如果 pos *超出范围,则返回NULL并设置IndexErrorexception。

类似于PyTuple_GetItem(),但不检查其参数。

返回* p 指向的 Tuples 切片,在 low high *之间,或者在失败时返回NULL。这等效于 Python 表达式p[low:high]。不支持从列表末尾开始索引。

Note

此函数“窃取”对* o *的引用,并放弃对已在 Tuples 中受影响位置的项的引用。

Note

该宏“窃取”对* o 的引用,并且与PyTuple_SetItem()不同,它不不会丢弃对要替换的任何项目的引用;Tuples 中 pos *处的任何引用都将泄漏。

结构序列对象

结构序列对象是namedtuple()对象的 C 等效项,即序列也可以pass属性访问的对象。要创建结构序列,首先必须创建特定的结构序列类型。

根据* desc *中的数据创建一个新的结构序列类型,如下所述。可以使用PyStructSequence_New()创建结果类型的实例。

3.4 版的新Function。

Field C Type Meaning
name const char * 结构序列类型的名称
doc const char * 指向该类型的文档字符串的指针或要忽略的NULL
fields PyStructSequence_Field * 指向具有新类型的字段名称的NULL终止数组的指针
n_in_sequence int Python 端可见的字段数(如果用作 Tuples)
Field C Type Meaning
name const char * 字段名称或NULL结束命名字段列表,设置为PyStructSequence_UnnamedField保留未命名
doc const char * 字段文档字符串或NULL忽略

创建* type *的实例,该实例必须已使用PyStructSequence_NewType()创建。

返回* p 指向的结构序列中位置 pos *的对象。不执行边界检查。

相当于PyStructSequence_GetItem()的宏。

Note

此函数“窃取”对* o *的引用。

Note

此函数“窃取”对* o *的引用。

首页