C++调用Python函数 问题
python里有个函数返回(list(),list())两个列表值。
我这里写的是:
PyObject *backValue = PyList_New(2);
backValue=PyObject_CallObject(func,args);
PyObject *backValue1 =PyList_GET_ITEM(backValue, 0);
PyObject *backValue2 =PyList_GET_ITEM(backValue, 1);
没有成功。backValue应该就是(list(),list())两个列表值。怎样才能把每个列表值转化为C?求高人赐教
我这里写的是:
PyObject *backValue = PyList_New(2);
backValue=PyObject_CallObject(func,args);
PyObject *backValue1 =PyList_GET_ITEM(backValue, 0);
PyObject *backValue2 =PyList_GET_ITEM(backValue, 1);
没有成功。backValue应该就是(list(),list())两个列表值。怎样才能把每个列表值转化为C?求高人赐教
作者: wobuzhidaotashishui 发布时间: 2011-05-20
试试这个:PyInt_AS_LONG
很惭愧,只用过boost提供的那个python库,没怎么直接接触 PYTHON/C API
很惭愧,只用过boost提供的那个python库,没怎么直接接触 PYTHON/C API
作者: colorfulcode 发布时间: 2011-05-20
返回2个列表值这说法有点诡异,应该说返回一个元组吧, 对元组你用列表函数操作这行么。另外你贴的c代码第一行不要去new啥的,不然下一行改指针后就丢失...
作者: angel_su 发布时间: 2011-05-20