在c語言中調用python函數返回值,具體方法如下:
void test1()
{
Py_Initialize();//初始化python
getcurrent();
PyObject *pModule = NULL, *pFunc = NULL, *pArg = NULL;
pModule = PyImport_ImportModule("demo");//引入模塊
pFunc = PyObject_GetAttrString(pModule, "print_arg");//直接獲取模塊中的函數
pArg = Py_BuildValue("(s)", "hello_python"); //參數類型轉換
PyEval_CallObject(pFunc, pArg); //調用直接獲得的函數,并傳遞參數
Py_Finalize(); //釋放python
return;
}