python 编写dll给c++调用

发布时间:2024年01月23日

Python可以通过ctypes库将Python函数封装为DLL文件,以便C++程序调用。下面是一个简单的示例:

  1. 创建一个Python脚本,其中包含要封装的函数,例如:
 
def add(x, y):
return x + y
  1. 将该脚本编译为DLL文件。可以使用pyinstaller或py2exe等工具来执行此操作。例如,使用pyinstaller,可以在命令行中输入以下命令:
 
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解释器。

文章来源:https://blog.csdn.net/zengliguang/article/details/135760374
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。