我试图从我的C脚本调用一个python函数。我成功地从python函数返回一个双变量并在C脚本中打印它。现在的问题是我需要从python返回多个变量(tuple)。我怎样才能成功呢?我的单变量返回代码如下:#include
int main(){
PyObject *pName, *pModule, *pDict, *pFunc;
PyObject *pArgs, *pValue;
int i;
double read;
Py_Initialize();
PyObject* sysPath = PySys_GetObject((char*)"path");
PyList_append(sysPath, PyString_FromString("."));
pName = PyString_FromString("eadata"); //Primer posible error
pModule = PyImport_Import(pName);
Py_DECREF(pName);
if(pModule != NULL){
pFunc = PyObject_GetAttrString(pModule,"lectura");
if(pFunc && PyCallable_Check(pFunc)){
pValue = PyObject_CallObject(pFunc,NULL);
if(pValue != NULL){
printf("Result of call: %lf \n", PyFloat_AsDouble(pValue));
Py_DECREF(pValue);
}
else{
Py_DECREF(pFunc);
Py_DECREF(pModule);
PyErr_Print();
fprintf(stderr,"Call failed\n");
return 1;
}
}
}
else{
PyErr_Print();
fprintf(stderr, "Error al cargar eadata.py \n");
}
}
我的python脚本是:
^{pr2}$
这是可行的,但是我想同时返回其他变量,比如ay、az等等。这是我第一次使用嵌入式python,我真的不知道怎么做。在