Python项目打包成可执行文件.exe | Pyinstaller压缩打包exe

Python项目打包成可执行文件.exe | Pyinstaller压缩打包exe

导言:本教程讲述如何使用Python中Pyinstaller将项目打包成exe文件,网络上其实有很多的教程,但也有些零散,例如当你学会如何使用Pyinstaller打包后,可能会出现很多问题,打包一个非常简单的项目文件体积却异常的大,要解决这个问题你又要去找教程。因此我打算将两者结合在一起,一篇笔记教你如何打包好你的项目文件。

Pyinstaller基本用法

pyinstaller 最重要的两个参数就是 -F 与 -D 参数。

使用 - F 参数, pyinstaller 会将 python 程序打包成单个可执行文件。
使用 - D 参数, pyinstaller 会将 python 程序打包成一个文件夹,运行程序时,需要进入该文件夹,点击运行相应的可执行程序。

可以通过 - i 参数指定打包程序的图标 (icon),但这个命令只能在 Windows 平台下生效。
还可以使用 - n 参数指定生成打包文件的名称。

日常推荐使用- F:

Pyinstaller -F  xxx.py -i xxx.ico

Pyinstaller默认是 - D:

pyinstaller xxx.py --workpath ./temp --distpath ./dist -i xxx.ico

Pyinstaller压缩打包exe

1.UPX+Pyinstaller

UPX是可执行文件压缩软件,免费,可以它的官网下载release压缩包,解压到一个固定的位置。(建议不要更换位置,因为每次打包都要调用这个文件夹位置)例如这里我把它放在我的D盘根目录下。

UPX官网:UPX: the Ultimate Packer for eXecutables - Homepage

日常推荐:

pyinstaller --upx-dir "D:\UPX" -F "xxx.py" -i "xxx.ico" -w --clean

路径记得改成upx安装的路径!!!

–clean用于清除Pyinstaller的缓存

2.剔除多余的库

Pyinstaller可以通过–exclude-module xxx指令剔除多余不想打包的库,可以重复使用剔除,但是效率并不高

pyinstaller --onefile --exclude-module torch --exclude-module jupyter to_ico.py -i fx.ico

3.pipenv创建虚拟环境

无论是用pipenv还是conda,创建虚拟环境基本是压缩效率最高的方式,特别是对于轻量级的程序。缺点是配置有点繁琐,如果程序体量很大,依赖库很多,那我不如推荐你直接采用upx进行打包。

1.pip安装pipenv

pip install pipenv

2.在指定的项目文件夹中打开cmd,创建新的虚拟环境

pipenv --python 3.11

3.创建完虚拟环境后,可以用以下命令激活虚拟环境:

pipenv shell

4.然后用pipenv install 相关的库

pipenv install xxx
pipenv install pyinstaller

5.打包项目

pyinstaller  -F "xxx.py" -i "xxx.ico" -w --clean

6.删除虚拟环境(可选)

这个命令会删除虚拟环境,包括虚拟环境中安装的所有包。但是,这个命令不会删除PipfilePipfile.lock文件,这两个文件包含了你的项目的依赖信息。如果你以后再次在这个项目目录中运行pipenv install命令,pipenv会使用这两个文件中的信息来重新创建虚拟环境并安装依赖。

pipenv --rm

# 查看当前虚拟环境的名字
pipenv --venv

7.退出虚拟环境,输入以下指令

exit
或者
deactivate

总结

如果你想省事直接采用Upx压缩打包的方法,如果你想极致地压缩exe文件的大小,那就采用pipenv或者conda创建虚拟环境,进行打包。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值