Python程序设计实例 | 带图标的exe可执行文件的打包

简介: * 本系列推文案例中,建议Python采用3.10及以上版本,NumPy采用1.22.3及以上版本,Matplotlib采用3.5.1及以上版本,Pandas采用1.4.2及以上版本。Python从3.10这个版本开始,标准发行版本中自带的IDLE交互式环境中输入提示符>>>单独放在左侧,不能随输入语句一起复制。为了清晰区分实例在交互环境中的输入和输出,本系列推文在每个输入语句的开头依然保留输入提示符>>>。

640.jpg


# 01、带图标的exe可执行文件的打包

在上一篇已编写了一个条形码识别程序,并且是图形界面程序。现在把它打包成带图标的exe可执行文件。

可以在 http://www.easyicon.net/网站上挑选一个合适的图标(最好挑选可免费用于商业的)。本书中挑选了如图1所示的图标。

image.png


■ 图1 挑选的条形码识别程序图标bar.ico

使用如下pyinstaller命令打包:


pyinstaller -F -i bar.ico barcodes.py

然后把配套素材中的Zbar文件夹复制到dist目录,就可以正常运行了。然而因为是图形界面程序,我们并不希望看到如图2所示的运行结果中的黑色命令行窗口。

image.png


■ 图2 带有命令行窗口的图形界面程序

可以通过添加-w参数实现,命令如下:


pyinstaller -F -w -i bar.ico barcodes.py

这时却发现无法正常调用zbar!在Windows操作系统下,用pyinstaller打包窗口模式的Python程序直接调用子进程会出现错误。

解决方案可以参考网页https://github.com/pyinstaller/pyinstaller/wiki/Recipe-subprocess,可以看出,pyinstaller在具体使用上可能还会碰到各种问题,需要读者在网上自行搜索答案。

这里需要修改文件名为barcodes.py的程序,将原第43行的代码:

image.png


改为以下代码:

image.png


并在程序开头引入subprocess包即可:

import subprocess as sp
目录
相关文章
|
2天前
|
Python
Python 练习实例19
Python 练习实例19
|
1天前
|
Python
Python 练习实例24
Python 练习实例24
|
2天前
|
JSON 安全 数据格式
Python文件操作宝典:一步步教你玩转文件读写
Python文件操作宝典:一步步教你玩转文件读写
|
2天前
|
Python
Python 练习实例21
Python 练习实例21
|
2天前
|
Python
Python 练习实例20
Python 练习实例20
|
1天前
|
Python
Python 练习实例22
Python 练习实例22
|
2天前
|
Python
python搭建文件服务
python搭建文件服务
7 1
|
1天前
|
Python
Python 练习实例23
Python 练习实例23
|
1天前
|
Python
经验大分享:python类函数,实例函数,静态函数
经验大分享:python类函数,实例函数,静态函数
|
1天前
|
数据安全/隐私保护 Python
经验大分享:python读取yaml文件
经验大分享:python读取yaml文件

热门文章

最新文章