QT Creator 中C++调用python程序

我会带着你远行 2024-04-18 13:34 120阅读 0赞

开发环境,QT MSVC5.8 64位版本 Python 3.6.5 64位版本

1. 第一步

在项目的.pro文件中加入pyhon的头文件路径和库路径

  1. INCLUDEPATH += C:\Python\Python36\include
  2. LIBS += -LC:\Python\Python36\libs -lpython36

当然路径要换成自己的路径
其中LIBS += -LC:\Python\Python36\libs -lpython36中的L 和 C之间不能有空格,否则会报错
在这里插入图片描述

2. 第二步

引入头文件

  1. #include<Python.h>

3. 第三步

在需要引用python的地方编写程序

  1. //进行初始化
  2. Py_Initialize();
  3. //如果初始化失败,返回
  4. if(!Py_IsInitialized())
  5. {
  6. qDebug()<<"Initialize filed";
  7. return ;
  8. }
  9. PyRun_SimpleString("import sys");
  10. PyRun_SimpleString("sys.path.append('./')");
  11. //将python的运行目录转移到当前文件夹
  12. PyObject *pModule = NULL;
  13. PyObject *pFuncHello = NULL;
  14. //加载模块,模块名称为HELLO,就是HELLO.py文件
  15. pModule = PyImport_ImportModule("hello");
  16. //如果加载失败,则返回
  17. if(!pModule)
  18. {
  19. qDebug()<<"import Module filed";
  20. return ;
  21. }
  22. //加载函数hello
  23. pFuncHello = PyObject_GetAttrString(pModule, "hello");
  24. //如果失败则返回
  25. if(!pFuncHello)
  26. {
  27. qDebug()<<"import Func filed";
  28. return ;
  29. }else{
  30. qDebug()<<"import Func successed";
  31. }
  32. //调用函数
  33. PyObject_CallObject(pFuncHello, NULL);
  34. //退出
  35. Py_Finalize();

4. 第四步

编译时最好采用release版本,避免出现错误

错误参考

发表评论

表情:
评论列表 (有 0 条评论,120人围观)

还没有评论,来说两句吧...

相关阅读

    相关 配置Qt Creator

    前言 为了使Qt Creator更像您最喜欢的代码编辑器或IDE,您可以更改键盘快捷键、配色方案、通用高亮显示、代码片段和版本控制系统的设置。 检查生成和运行设置

    相关 Qt:配置Qt Creator

    如果将Qt Creator作为Qt安装的一部分进行安装,则应该能够使用默认设置和配置选项直接使用它。 但是,如果您安装独立的Qt Creator程序包,从源代码构建Qt Cr

    相关 QtQt Creator手册

    Qt Creator为应用程序开发人员提供了跨平台的完整集成开发环境(IDE),以为多个台式机,嵌入式和移动设备平台(例如Android和iOS)创建应用程序。它可用于Linu