我当前在尝试检索 python 代码返回的值时遇到问题。
我的代码草稿是:
# I call a function that returns a PyObject
PyObject* pyObj_val = call_binding(...);
# This PyObject seems to be a PyInt as PyInt_Check returns 1
assert(PyInt_Check(pyObj_val) == 1);
# Now the only way i found to convert this PyInt to a [C] int is:
int my_val = (int) PyInt_AsLong(pyObj_val);
我想有一种方法可以执行此操作,而无需经过长时间的转换和 int 转换。有人知道吗?
感谢您考虑我的请求。
最佳答案
简单地说:不,这就是解决问题的方法。没有单独的 PyInt_AsInt
函数。
关于Python - 将 PyInt 转换为 C int,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53633102/