阅读量:150
在C语言中调用Python程序可以使用Python的C语言接口,也称为Python C API。以下是一个简单的示例:
- 首先在C语言中包含Python头文件:
#include
- 初始化Python解释器:
Py_Initialize();
- 导入Python模块:
PyObject* pModule = PyImport_ImportModule("your_python_module_name");
- 调用Python函数:
PyObject* pFunc = PyObject_GetAttrString(pModule, "your_python_function_name");
PyObject* pArgs = PyTuple_Pack(2, PyLong_FromLong(1), PyLong_FromLong(2));
PyObject* pValue = PyObject_CallObject(pFunc, pArgs);
- 处理Python函数返回值:
long result = PyLong_AsLong(pValue);
- 释放Python对象和解释器:
Py_DECREF(pArgs);
Py_DECREF(pValue);
Py_DECREF(pFunc);
Py_DECREF(pModule);
Py_Finalize();
这样就可以在C语言中调用Python程序并获取返回值。需要注意的是,调用Python函数时需要传递正确的参数,并且在使用完Python对象后需要释放内存。