python打包

PyInstaller 完全指南:将Python打包为独立可执行文件

什么是PyInstaller?

PyInstaller是一个流行的Python打包工具,它能够将Python应用程序及其所有依赖项打包成单个可执行文件,可以在没有安装Python解释器的计算机上运行。

特性 优势
跨平台支持 Windows、macOS和Linux
零依赖部署 用户无需安装Python或任何依赖
多种打包模式 单文件或目录结构
广泛兼容性 支持Python 3.5+及主流第三方包

为什么选择PyInstaller?

优势 说明
简单易用 基本用法只需一条命令
高度兼容 支持大多数Python包
可定制性强 通过spec文件精细控制打包过程
免费开源 MIT许可证,可自由使用
活跃维护 持续更新支持新Python版本

安装PyInstaller

使用pip安装PyInstaller:

pip install pyinstaller

安装建议:

  • 在虚拟环境中安装以避免污染全局环境
  • 确保安装的PyInstaller版本与Python版本兼容
  • 对于开发环境,可以安装开发版获取最新功能:pip install https://github.com/pyinstaller/pyinstaller/archive/develop.zip

基础使用

基本打包命令

pyinstaller your_script.py

打包过程:

  1. 分析your_script.py及其所有导入
  2. 收集所有依赖文件
  3. 创建distbuild目录
  4. dist目录生成可执行文件

常用选项

选项 说明 示例
--onefile 打包为单个可执行文件 pyinstaller --onefile script.py
--windowed 不显示控制台窗口(Windows/macOS GUI应用) pyinstaller --windowed app.py
--name 指定输出名称 pyinstaller --name MyApp script.py
--icon 添加应用图标 pyinstaller --icon=app.ico script.py
--add-data 添加非Python文件 pyinstaller --add-data="data.txt;." script.py

打包示例

# 打包为单文件,使用自定义图标,不显示控制台
pyinstaller --onefile --windowed --icon=app.ico app.py

# 添加数据文件和目录
pyinstaller --add-data="config.ini;." --add-data="images/*;images/" app.py

路径说明:

  • Windows使用分号;分隔源路径和目标路径
  • Linux/macOS使用冒号:
  • 目标路径相对于可执行文件位置

高级配置

使用spec文件

运行pyinstaller script.py后会生成script.spec文件,可以手动修改后直接使用spec文件打包:

pyinstaller script.spec

典型spec文件示例:

# script.spec
block_cipher = None

a = Analysis(['script.py'],
             pathex=['/path/to/script'],
             binaries=[

你可能感兴趣的:(python,#,python课程,python,后端,青少年编程,开发语言,电子)