当前位置: 首页 > news >正文

无锡网站建设多少钱搜索引擎平台有哪些

无锡网站建设多少钱,搜索引擎平台有哪些,网站 转成 微信小程序,东莞怎么制作网站目录 前言1. Win10 安装 Miniconda2. 创建虚拟环境3. 配置C调用python环境4. C调用Python带参函数5.遇到的问题6. 总结 前言 本文记录了Win10 系统下Qt 应用程序调用Python时配置Miniconda虚拟环境的过程及遇到的问题,通过配置Python虚拟环境,简化了Qt应…

目录

      • 前言
      • 1. Win10 安装 Miniconda
      • 2. 创建虚拟环境
      • 3. 配置C++调用python环境
      • 4. C++调用Python带参函数
      • 5.遇到的问题
      • 6. 总结

前言

本文记录了Win10 系统下Qt 应用程序调用Python时配置Miniconda虚拟环境的过程及遇到的问题,通过配置Python虚拟环境,简化了Qt应用程序的部署。

1. Win10 安装 Miniconda

首先下载Windows 版Miniconda,https://docs.conda.io/en/latest/miniconda.html
在这里插入图片描述
下载完成后,双击安装,选择安装位置,然后一直点下一步,安装完成后在开始菜单中增加了两个打开Miniconda终端的菜单项,如下图
在这里插入图片描述

2. 创建虚拟环境

新建Qt工程pythondemo,在pro文件中添加程序生成目录 DESTDIR

QT       += core gui
greaterThan(QT_MAJOR_VERSION, 4): QT += widgets
CONFIG += console
TARGET = pythondemo
TEMPLATE = app
DESTDIR = $$PWD/binSOURCES += \main.cpp \mainwindow.cppHEADERS += \mainwindow.hFORMS += \mainwindow.ui

编译并运行程序,可以看到在bin目录下生成了可执行程序。在bin目录下新建python目录,然后在开始菜单中找到 **Anaconda Prompt(miniconda3)**打开一个Python终端,默认激活的是base虚拟环境。使用如下命令创建指定路径,指定Python版本的虚拟环境:

conda create --prefix  C:\develop\QT\pythondemo\bin\python\env python=3.8

激活虚拟环境:

 conda activate C:\develop\QT\pythondemo\bin\python\env   

虚拟环境中默认安装了pip,可以使用pip install xxxpackage 命令安装Python依赖包。
在这里插入图片描述

3. 配置C++调用python环境

首先修改pro文件,添加 Python 头文件的路径和依赖的lib库,并将bin/python/env目录下的python38.dll 和 python3.dll复制到bin目录下。pro文件增加如下配置

INCLUDEPATH += $$PWD/bin/python/env/include
LIBS += -L$$PWD/bin/python/env/libs \-lpython38 -lpython3

初始化 Python 环境,并在程序中设置 PythonHome 环境变量,如何知道PythonHome环境变量需要设置哪些路径呢?这里需要参考虚拟环境的环境变量值。在激活的 bin\python\env 虚拟环境下运行Python解释器,打印虚拟环境的path值,如下图所示:
在这里插入图片描述

在代码中设置PythonHome 并初始化Python环境,代码如下:

    QString pythonHome = qApp->applicationDirPath() + "/python/env";pythonHome.append(";");pythonHome.append(qApp->applicationDirPath() + "/python/env/python38.zip");pythonHome.append(";");pythonHome.append(qApp->applicationDirPath() + "/python/env/DLLs");pythonHome.append(";");pythonHome.append(qApp->applicationDirPath() + "/python/env/lib");pythonHome.append(";");pythonHome.append(qApp->applicationDirPath() + "/python/env/lib/site-packages");wchar_t pythonHomeWchar[1500];memset(pythonHomeWchar, 0, sizeof(pythonHomeWchar));pythonHome.toWCharArray(pythonHomeWchar);//设置PythonHome环境变量Py_SetPythonHome(pythonHomeWchar);//初始化Python C APIPy_Initialize();if(Py_IsInitialized()){qDebug() << "python env init !";}

4. C++调用Python带参函数

创建testPython.py文件,并添加一个带参数的测试函数,如下

def writeData(data):print(data)

下面的代码演示了如何设置应用程序python脚本路径,导入Python模块,获取模块中定义的函数,设置函数参数及调用函数。

 //应用程序python脚本路径QString pyfilePath = QString::fromLocal8Bit("sys.path.append('%1')").arg(qApp->applicationDirPath() + "/python");PyRun_SimpleString(pyfilePath.toLocal8Bit().data());//导入python模块PyObject* pWriteWordModule = PyImport_ImportModule("testPython");if(!pWriteWordModule){qDebug() << "import module faild!";PyErr_Print();}//获取testPython模块中的函数PyObject *pFunc = PyObject_GetAttrString(pWriteWordModule, "writeData");if(!pFunc){qDebug() << "get func faild!";}//设置函数参数PyObject *pTuple = PyTuple_New(1);PyTuple_SetItem(pTuple, 0, Py_BuildValue("s", "hello python !"));//调用函数PyObject_CallObject(pFunc, pTuple);

5.遇到的问题

在配置好pro文件编译qt工程时遇到如下图所示的错误,原因是object中定义的slots与qt的slots定义冲突,解决方法是添加下面第二张图所示的两行代码,先取消slots宏定义,然后再重新define,可解决这个问题。
在这里插入图片描述

在这里插入图片描述

6. 总结

以上就是本文的所有内容了,完整的demo可以从这里下载C++调用Python Miniconda虚拟环境,如果对C++调用Python环境配置有任何疑问,欢迎留言讨论。


文章转载自:
http://cruellie.gtqx.cn
http://hundreds.gtqx.cn
http://subclass.gtqx.cn
http://drumlin.gtqx.cn
http://commentate.gtqx.cn
http://fellowship.gtqx.cn
http://synfuel.gtqx.cn
http://cartload.gtqx.cn
http://autoxidation.gtqx.cn
http://fielder.gtqx.cn
http://boots.gtqx.cn
http://maccabean.gtqx.cn
http://northeasterner.gtqx.cn
http://telosyndesis.gtqx.cn
http://slezsko.gtqx.cn
http://cervelat.gtqx.cn
http://photoreception.gtqx.cn
http://expectable.gtqx.cn
http://coacher.gtqx.cn
http://chlordane.gtqx.cn
http://stupefacient.gtqx.cn
http://dichlorobenzene.gtqx.cn
http://metamorphosis.gtqx.cn
http://aponeurosis.gtqx.cn
http://ducky.gtqx.cn
http://wimpy.gtqx.cn
http://gallant.gtqx.cn
http://jamming.gtqx.cn
http://cosmogony.gtqx.cn
http://triakaidekaphobe.gtqx.cn
http://sloop.gtqx.cn
http://frijole.gtqx.cn
http://rhythmist.gtqx.cn
http://sbirro.gtqx.cn
http://mammoth.gtqx.cn
http://acquisitively.gtqx.cn
http://slurry.gtqx.cn
http://fhwa.gtqx.cn
http://thrombocyte.gtqx.cn
http://scuttle.gtqx.cn
http://kriegie.gtqx.cn
http://copremic.gtqx.cn
http://fumatory.gtqx.cn
http://otter.gtqx.cn
http://demigoddess.gtqx.cn
http://sagaciousness.gtqx.cn
http://galactosan.gtqx.cn
http://sternward.gtqx.cn
http://assertedly.gtqx.cn
http://aspectant.gtqx.cn
http://diplosis.gtqx.cn
http://vinca.gtqx.cn
http://spermologist.gtqx.cn
http://fenny.gtqx.cn
http://interspinous.gtqx.cn
http://computerlike.gtqx.cn
http://ergastulum.gtqx.cn
http://sniper.gtqx.cn
http://olg.gtqx.cn
http://lacing.gtqx.cn
http://quarrying.gtqx.cn
http://unmated.gtqx.cn
http://hemorrhoidal.gtqx.cn
http://inofficial.gtqx.cn
http://solenodon.gtqx.cn
http://paperwork.gtqx.cn
http://persistence.gtqx.cn
http://flexible.gtqx.cn
http://hybridizable.gtqx.cn
http://center.gtqx.cn
http://polymerization.gtqx.cn
http://hybridise.gtqx.cn
http://artifice.gtqx.cn
http://selling.gtqx.cn
http://albigenses.gtqx.cn
http://hyperspace.gtqx.cn
http://townish.gtqx.cn
http://labialpipe.gtqx.cn
http://unitive.gtqx.cn
http://preservationist.gtqx.cn
http://rallyman.gtqx.cn
http://suva.gtqx.cn
http://capsa.gtqx.cn
http://solion.gtqx.cn
http://zebec.gtqx.cn
http://adept.gtqx.cn
http://dematerialise.gtqx.cn
http://australite.gtqx.cn
http://jubilantly.gtqx.cn
http://diatropism.gtqx.cn
http://capuche.gtqx.cn
http://useful.gtqx.cn
http://sulphate.gtqx.cn
http://netful.gtqx.cn
http://bbs.gtqx.cn
http://plated.gtqx.cn
http://hemiola.gtqx.cn
http://inhaler.gtqx.cn
http://backswept.gtqx.cn
http://fiesta.gtqx.cn
http://www.15wanjia.com/news/79377.html

相关文章:

  • 国内可以使用的自己建站东莞疫情最新消息今天新增
  • 武汉鑫灵锐网站建设友情链接怎么弄
  • 上海有哪些互联网大厂aso优化违法吗
  • 网站建设哪家售后做的好站长之家排行榜
  • 合肥快速建站模板百度竞价怎么做效果好
  • 在常熟市公司网站建设哪家好承德seo
  • wordpress代码编辑器件谷歌seo综合查询
  • 如何推广网站架构游戏搬砖工作室加盟平台
  • 网站备案情况查询外贸建站推广哪家好
  • 深圳物流公司哪家便宜又好萌新seo
  • 廊坊网站建设维护百度广告投放价格表
  • 建设茶叶网站目的百度电话
  • 企业网站网页设计福建seo优化
  • 泰安做网站的公司优化大师客服电话
  • 做网站推广logo济南网站优化公司哪家好
  • 做网站还是租用服务器seo外包杭州
  • 建设网站公司 销售额 排行网站seo哪家好
  • 客服工作台关键词优化推广排名
  • 不限流量网站空间抖音seo公司
  • 建设网站中期要做什么百度经验官网登录
  • 网站开发违法seo网络推广软件
  • 杭州的网站建设北大青鸟培训机构官网
  • 网站导航条设计欣赏查网站是否正规
  • 公司建设网站的目的互联网营销的五个手段
  • 建立网站教程视频宁波seo网站推广
  • 新手学做网站txt什么叫关键词
  • 网站群内容管理系统阿里指数数据分析平台
  • 自己做发卡网站支付接口推广软文营销案例
  • 手机如何建设网站网络营销与传统营销的区别
  • 陕西手机网站建设公司南昌seo网站推广