PyIntObject
仍在python3.x源代码中,还是被PyLongObject
取代了?我找不到以下代码:
typedef struct {
PyObject_HEAD
long ob_ival;
} PyIntObject;
答案 0 :(得分:0)
来自https://docs.python.org/3.2/howto/cporting.html(统一长整型):
Python 3只有一种整数类型int()。但是它实际上对应于Python 2的long()类型-删除了Python 2中使用的int()类型。在C-API中,PyInt_ *函数被其等效的PyLong_ *代替。
这里最好的做法是使用intobject.h中别名为PyLong_ *的PyInt_ *函数。在某些情况下,也可以使用抽象的PyNumber_ * API。
也请检查以下讨论: How does Python manage int and long?