Python可以通过ctypes库将Python函数封装为DLL文件,以便C++程序调用。下面是一个简单的示例:
def add(x, y):
return x + y
pyinstaller --onefile my_script.py
这将生成一个名为my_script.dll
的DLL文件。
3. 在C++程序中包含Python的头文件和DLL文件,并使用Python的API来调用Python函数。例如:
#include <Python.h>
#include <windows.h>
int main() {
Py_Initialize();
PyRun_SimpleString("import my_script");
PyRun_SimpleString("result = my_script.add(2, 3)");
int result = PyInt_AsLong(PyDict_GetItemString(PyModule_GetDict(PyImport_AddModule("my_script")), "result"));
printf("Result: %d\n", result);
Py_Finalize();
return 0;
}
该程序将初始化Python解释器,导入Python脚本,调用Python函数,并获取返回结果。最后,它打印结果并关闭Python解释器。