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
目录
相关文章
|
1月前
|
数据可视化 Linux iOS开发
Python脚本转EXE文件实战指南:从原理到操作全解析
本教程详解如何将Python脚本打包为EXE文件,涵盖PyInstaller、auto-py-to-exe和cx_Freeze三种工具,包含实战案例与常见问题解决方案,助你轻松发布独立运行的Python程序。
570 2
|
22天前
|
监控 机器人 编译器
如何将python代码打包成exe文件---PyInstaller打包之神
PyInstaller可将Python程序打包为独立可执行文件,无需用户安装Python环境。它自动分析代码依赖,整合解释器、库及资源,支持一键生成exe,方便分发。使用pip安装后,通过简单命令即可完成打包,适合各类项目部署。
|
1月前
|
API 语音技术 开发者
Python 项目打包,并上传到 PyPI,分享项目
本文介绍了如何使用 Poetry 打包并发布一个 Python 项目至 PyPI。内容包括:项目创建、配置 `pyproject.toml` 文件、构建软件包、上传至 PyPI、安装与使用。通过实例 iGTTS 展示了从开发到发布的完整流程,帮助开发者快速分享自己的 Python 工具。
|
2月前
|
缓存 数据可视化 Linux
Python文件/目录比较实战:排除特定类型的实用技巧
本文通过四个实战案例,详解如何使用Python比较目录差异并灵活排除特定文件,涵盖基础比较、大文件处理、跨平台适配与可视化报告生成,助力开发者高效完成目录同步与数据校验任务。
113 0
|
3月前
|
安全 Linux 网络安全
Python极速搭建局域网文件共享服务器:一行命令实现HTTPS安全传输
本文介绍如何利用Python的http.server模块,通过一行命令快速搭建支持HTTPS的安全文件下载服务器,无需第三方工具,3分钟部署,保障局域网文件共享的隐私与安全。
713 0
|
开发工具 git 索引
Python打包系统简单入门
最近把pyenv、pipenv这种都研究了一下,然后我发现一个严重的问题:就是我虽然看了半天这些工具,但是我对Python自己的打包系统却完全没有了解。所以这篇文章就来研究一下Python自带的打包系统。
1535 0
|
1月前
|
数据采集 机器学习/深度学习 人工智能
Python:现代编程的首选语言
Python:现代编程的首选语言
204 102
|
1月前
|
数据采集 机器学习/深度学习 算法框架/工具
Python:现代编程的瑞士军刀
Python:现代编程的瑞士军刀
215 104
|
1月前
|
人工智能 自然语言处理 算法框架/工具
Python:现代编程的首选语言
Python:现代编程的首选语言
195 103
|
1月前
|
机器学习/深度学习 人工智能 数据挖掘
Python:现代编程的首选语言
Python:现代编程的首选语言
140 82

推荐镜像

更多