使用pip安装pyinstaller

  1. pip install pyinstaller

打包命令

pyinstaller -F 文件所在地址
比如我在此保存当前目录下的py文件

  1. pyinstaller -F app.py

源文件所在目录将生成 dist 和 build 两个文件夹,其中build 目录是 pyinstaller 存储临时文件的目录,可以安全删除,dist目录中才有最终打包的exe文件

pyinstaller 常用选项

-h,—help 查看该模块的帮助信息
-F,-onefile 产生单个的可执行文件
-D,—onedir 产生一个目录(包含多个文件)作为可执行程序
-a,—ascii 不包含 Unicode 字符集支持
-d,—debug 产生 debug 版本的可执行文件
-w,—windowed,—noconsolc 指定程序运行时不显示命令行窗口(仅对 Windows 有效)
-c,—nowindowed,—console 指定使用命令行窗口运行程序(仅对 Windows 有效)
-o DIR,—out=DIR 指定 spec 文件的生成目录。如果没有指定,则默认使用当前目录来生成 spec 文件
-p DIR,—path=DIR 设置 Python 导入模块的路径(和设置 PYTHONPATH 环境变量的作用相似)。也可使用路径分隔符(Windows 使用分号,Linux 使用冒号)来分隔多个路径
-n NAME,—name=NAME 指定项目(产生的 spec)名字。如果省略该选项,那么第一个脚本的主文件名将作为 spec 的名字

将资源文件一起打包至exe中

首先需要生成spec文件,pyi-makespec -F test.py (如果要添加Icon等可以在这里就使用pyi-makespec —icon abc.jpg -F test.py语句生成spec文件)

  1. pyi-makespec -F test.py

编辑spec文件,在datas选项中说明需要将哪些文件加入exe,在零时文件夹中命名成什么
以下图为例,意思将test.py当前目录下的res目录(及其目录中的文件)加入目标exe中,在运行时放在零时文件的根目录下,名称为res
image.png
生成EXE文件,pyinstaller -F test.spec

  1. pyinstaller -F test.spec