PyInstaller
是一个十分流行的 Python 打包工具,它能把 Python 脚本打包成独立的可执行文件,在不同环境中运行。以下为你详细介绍几种常见的 PyInstaller
打包模式:
1. 单文件打包模式(--onefile
)
- 特点
- 该模式会将 Python 脚本及其所有依赖项打包成一个单独的可执行文件。这样做的好处是便于分发和部署,用户只需拿到这一个文件就能运行程序,无需额外处理依赖问题。不过,打包过程可能会稍微慢一些,生成的可执行文件启动速度也可能会比多文件模式稍慢,因为在运行时需要先将所有依赖文件解压到临时目录。
- 使用示例
pyinstaller --onefile your_script.py
- 参数解释
--onefile
:指定使用单文件打包模式。your_script.py
:需要打包的 Python 脚本文件名。
- 打包后文件位置
打包完成后,可执行文件会生成在dist
目录下,文件名为your_script
(在 Windows 系统下为your_script.exe
)。
2. 多文件打包模式(默认模式)
- 特点
- 这是
PyInstaller
的默认打包模式,会将 Python 脚本和其依赖项分别打包成多个文件,存放在一个目录中。这种模式的打包速度相对较快,可执行文件的启动速度也更快,因为不需要进行解压操作。但分发时需要将整个目录一起提供给用户,管理起来相对复杂一些。
- 这是
- 使用示例
pyinstaller your_script.py
- 参数解释
your_script.py
:需要打包的 Python 脚本文件名。
- 打包后文件位置
打包完成后,会在dist
目录下生成一个与脚本同名的目录,里面包含可执行文件和各种依赖文件。
3. 窗口化打包模式(--windowed
或 -w
)
- 特点
- 该模式主要用于打包 GUI 程序,打包后运行可执行文件时不会显示命令行窗口,使程序看起来更像一个标准的桌面应用程序。如果你的 Python 脚本是使用
Tkinter
、PyQt
或wxPython
等库开发的 GUI 程序,推荐使用此模式。
- 该模式主要用于打包 GUI 程序,打包后运行可执行文件时不会显示命令行窗口,使程序看起来更像一个标准的桌面应用程序。如果你的 Python 脚本是使用
- 使用示例
# 单文件窗口化打包
pyinstaller --onefile --windowed your_gui_script.py
# 多文件窗口化打包
pyinstaller --windowed your_gui_script.py
- 参数解释
--windowed
或-w
:指定使用窗口化打包模式。your_gui_script.py
:需要打包的 GUI 程序的 Python 脚本文件名。
4. 调试模式(--debug
)
- 特点
- 调试模式主要用于开发和调试阶段,它会在打包过程中输出详细的日志信息,帮助你排查打包过程中出现的问题。例如,当遇到依赖项找不到或打包失败的情况时,使用调试模式可以查看具体的错误信息。
- 使用示例
# 单文件调试打包
pyinstaller --onefile --debug your_script.py
# 多文件调试打包
pyinstaller --debug your_script.py
- 参数解释
--debug
:指定使用调试模式。your_script.py
:需要打包的 Python 脚本文件名。
5. 图标设置模式(--icon
)
- 特点
- 该模式允许你为打包后的可执行文件设置自定义图标,提升程序的美观度和辨识度。你需要提供一个
.ico
格式的图标文件。
- 该模式允许你为打包后的可执行文件设置自定义图标,提升程序的美观度和辨识度。你需要提供一个
- 使用示例
# 单文件带图标打包
pyinstaller --onefile --icon=your_icon.ico your_script.py
# 多文件带图标打包
pyinstaller --icon=your_icon.ico your_script.py
- 参数解释
--icon=your_icon.ico
:指定使用your_icon.ico
作为可执行文件的图标。your_script.py
:需要打包的 Python 脚本文件名。