python py2exe和pyinstaller打包对比
pyinstaller 打包文件
相信很多小伙伴将写的Python代码打包成 .exe文件时使用Python3的Pyinstaller打包工具,下面是pyinstaller的一些参数和命令
pyinstaller -F 文件.py 生成单个可执行文件
pyinstaller -w 文件.py 去掉控制台窗口,对于执行文件没有多大的用处,一般用于GUI面板代码文件
pyinstaller - -icon = 图标路径 表示可执行文件的图标
pyinstaller -c 使用控制台无窗口
pyinstaller -D 生成一个文件夹包括依赖文件
pyinstaller -p 添加Python使用的第三方库
pyinstaller -K 当包含tcl和tk也就是使用tkinter时加上-K参数
例如pyinstaller -F - -icon = 图标文件绝对路径 文件.py
常用的是pyinstaller -F 和pyinstaller -D
py2exe打包文件
py2exe将Python文件打包成.exe文件,py2exe有一定的限制性用在python2版本或者python3.4版本一下
import sys reload(sys) sys.setdefaultencoding('utf8')#设置Python2编码为utf8编码 原Python2代码为ASCII编码 具体情况具体修改不能随意而论 # -*- coding:utf8 -*- #用此代码打包tkinter代码屡试不爽太酷了 from distutils.core import setup import py2exe import sys #设置地柜限制次数 sys.setrecursionlimit(1000000) if len(sys.argv) == 1: sys.argv.append("py2exe") sys.argv.append("-q") setup(windows=[r"文件.py"], options = { "py2exe":{"dll_excludes":["MSVCP90.dll","libopenblas_v0.2.20_mingwpy.dll"]}} )#没有MSVC90.dll这个动态依赖库会打包不成功,而libopenblas_v0.2.20_mingwpy.dll在我的程序里没有加的话也不会成功,从网上找了一些资料只需要前边的动态库后边不需要。
经过时间可以得出结论:有时候用pyinstaller 打包比较合适,例如就一个可以生成执行的文件,但是发现有时候有黑色闪烁的框,而py2exe不会发生这样的状况,生成的可执行文件并且携带的依赖文件的大小要远比pyinstaller的小。因此,具体情况具体分析,当一种状况不可以的时候,可以去尝试其他的方式来达到相同的目的。例如如图:
pyinstaller打包包含tkinter文件如图:
而py2exe打包如图:
相比来说:py2exe要小很多,因此看自己对这两种打包工具的认识,结合自己的情况,然后对自己写的代码进行打包,到时候会有一定的成就感。谢谢采纳。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· winform 绘制太阳,地球,月球 运作规律
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· AI与.NET技术实操系列(五):向量存储与相似性搜索在 .NET 中的实现
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人
2020-10-22 模拟信号和数字信号
2020-10-22 模拟相机及数字相机应用区别分析
2020-10-22 摄像机分类(2)
2020-10-22 监控摄像机的分类
2020-10-22 变焦与对焦的区别
2020-10-22 DVR与NVR的区别
2018-10-22 如何使用Heartbeat,组建一个高可用性的mysql集群