pyinstaller 打包的两种方式
pyinstaller 有两种打包方式:
- 产生一个目录作为完整的可执行程序,把这个目录 copy 给其他人,运行其中的
***.exe
文件即可运行程序; - 产生单独的可执行文件,即一个
***.exe
文件。
我倾向于第一种方式,这也是 pyinstaller 默认的方式,要使用第二种方式,在 pyinstaller 命令中添加 -F
参数即可。
后面会介绍 pyinstaller 命令的主要参数及其用法。
pyinstaller 命令示例
下图是我打包时的命令:
运行几分钟,出现类似下面的界面,即打包完成:
pyinstaller 生成的包的结构
打包完成后,在打包的脚本的父目录下,会新增 3 个目录 1 个文件,如下图中的标示:
- __pycache,缓存目录,完成后就没有什么用了;
- builde,为构建过程临时文件目录,完成后也就没有什么用了;
- dist,生成的包目录:
- 如果指定了参数-F
,则该目录下只有一个.exe
文件,这就是你要的执行程序;
- 如果未指定参数-F
,则该目录下有一个子目录,子目录下有很多.dll
文件和一些其他文件,其中与你的脚本同名的***.exe
文件就是执行程序。你需要把这个子目录整个 copy 给他人使用。 ***.spec
,打包的配置文件,要实现一些高级的打包功能、解决一些打包出现的问题,有时需要修改这个文件。
下图是我打包后生成的 ..dist\ReadExif_main
目录中的部分文件。
双击运行 ReadExif_main.exe
即可启动我的小程序:
下一篇,我们再讨论 pyinstaller 命令的各种参数用法。