要从外部语言线程调用Python函数,可以使用C++的Python库。以下是一个简单的示例,说明如何在C++中调用Python函数:
在C++中使用Python库,首先需要安装Python库。在Windows上,可以从官方网站下载Python库。在Linux上,可以使用包管理器安装Python库。
在C++代码中,包含Python头文件。
#include<Python.h>
在C++代码中,初始化Python解释器。
Py_Initialize();
在C++代码中,导入Python模块。
PyObject* pModule = PyImport_ImportModule("module_name");
在C++代码中,调用Python函数。
PyObject* pFunc = PyObject_GetAttrString(pModule, "function_name");
PyObject* pArgs = PyTuple_New(0);
PyObject* pValue = PyObject_CallObject(pFunc, pArgs);
在C++代码中,获取函数返回值。
int result = PyLong_AsLong(pValue);
在C++代码中,释放资源。
Py_Finalize();
完整的示例代码如下:
#include<Python.h>
int main()
{
Py_Initialize();
PyObject* pModule = PyImport_ImportModule("module_name");
PyObject* pFunc = PyObject_GetAttrString(pModule, "function_name");
PyObject* pArgs = PyTuple_New(0);
PyObject* pValue = PyObject_CallObject(pFunc, pArgs);
int result = PyLong_AsLong(pValue);
Py_Finalize();
return 0;
}
请注意,这个示例代码仅适用于返回整数值的Python函数。如果要调用其他类型的Python函数,需要相应地修改代码。
领取专属 10元无门槛券
手把手带您无忧上云