阅读量:0
在C语言中调用Python程序可以使用Python的C语言接口,也称为Python C API。以下是一个简单的示例:
- 首先在C语言中包含Python头文件:
#include <Python.h>
- 初始化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对象后需要释放内存。