python 解释器下载_Windows 嵌入python解释器

这次主要记录在windows下嵌入python解释器的过程,程序没有多少,主要是头文件与库文件的提取。

程序平台:windows10 64 bit、 Qt 5.5.1 MSVC 2013 32 bit 、 python 3.7.4 32 bit

在ubuntu和windows下使用C/C++嵌入Python是有些不同的,ubuntu下可以使用对应命令来获取python配置信息,windows下直接链接对应库文件与头文件即可。

通过对python解释器的嵌入,我们可以自己做一个python编辑器,在内部可以定义自己的包;在运行时候python脚本的编写就相当于一个随时可变而又无需编译的动态库了。当然,有点还有很多,这种C/C++嵌入脚本语言的应用在游戏上也十分常用。好了,下面简单说下嵌入的流程。

1. Python安装包下载

我是直接在官网上下载的,Downloads-->>Python3.7.4。

a8ec8a13632762d0c17a25c2b37327ff503dc6af.jpeg?token=b951269a8a90690a7c8e6063e9d330b8&s=F0A5B15450EAB3097AA711D90300809B

2. 提取库文件与头文件

安装完的文件如下图,其中include文件夹里面是头文件,python37.dll是我们所需要的动态链接库,就像linux下的.so文件一样。

b219ebc4b74543a9815777740a88a587b8011459.png?token=f4f9be6b78152e9acc86cbddd9b7e96d&s=10106C321D1A544D5ED431CB030050B3

3. 在Qt下嵌入python

我使用的是Qt的控制台程序,也就是C++嵌入python。

①pro文件中链接库

Qt pro中文件如图:

注意:虽然系统是64位的,但是Qt与python都是32位的

0823dd54564e92588e95b0958f1dfe5dcdbf4e4f.png?token=d855269f59a5661bc5036d796d72950e&s=7CE3C85E11AEC54D4856F250030040FD

②在C++程序中调用python

在程序中调用python语句分以下几个步骤

1> 包含头文件

2> 初始化python解释器

3> 使用C接口运行python语句

4> 调用完成后释放资源。当然也可以再构造函数中初始化一次,在析构函数中再释放资源。

eac4b74543a98226b0ce22199f1d96044a90eb21.png?token=4bca796214b024e5d178416b73ce7517&s=3EC1CA581192C46D5A5E7252030040FD

4. 程序运行结果

267f9e2f07082838798f9ad5a90686044e08f191.png?token=b3366578ffba7f801d7799c2e5293a30&s=7490EC3244B8CC2110D0B9DE030090B1

最后再说些其他的:在嵌入python中有以下几个问题要考虑:

①python脚本的静态语法检查与运行中错误的输出

②python输出信息重定向到宿主程序

③如何停止、暂停(钩子函数)正在运行的python脚本

④当运行python阻塞接口时,停止会怎样?

⑤python脚本中有耗时操作,需要运行到线程或进程中

愿大家:

拥有梦想、实现价值

我是大贺,欢迎大家一起交流!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值