我想调用一个Python函数,它有多个C++输出。 目前我可以调用一个python函数(从cpp)只输出1个值。如何修改代码以便能够在cpp端从python接收多个输出
python代码:
def add(a, b):
x = (a+b)
return x
cpp代码:
Py_Initialize();
PyObject *pName, *pModule, *pDict, *pFunc, *pArgs, *pValue;
pName = PyString_FromString("myFunc");
pModule = PyImport_Import(pName);
pDict = PyModule_GetDict(pModule);
pFunc = PyDict_GetItemString(pDict, "add");
pArgs = PyTuple_New(2);
pValue = PyFloat_FromDouble(11+i);
PyTuple_SetItem(pArgs, 0, pValue);
PyTuple_SetItem(pArgs, 1, pValue);
PyObject* pResult = PyObject_CallObject(pFunc, pArgs);
double result = PyFloat_AsDouble(pResult);
cout << "Value of variable i is: " << result <<endl;
}
我想修改python函数以返回2个输出,即:
import numpy as np
def add(a, b):
x = (a+b)
return np.sqrt(x),x
我无法在cpp中打印python的2个输出。如何修改cpp代码以打印python的2个输出
目前没有回答
相关问题 更多 >
编程相关推荐