Python 3.6 打包 exe 实战:PyInstaller 配置与常见坑点排查

雨后青山
雨后青山
发布时间:2026-10-13| 4人浏览过
原创

本文详细记录使用 Python 3.6 将 py 文件打包为 exe 的完整流程。重点涵盖 32 位环境安装、依赖模块(如 urllib、config)的完整加载以及替换官方 PyInstaller 文件夹的操作。针对打包失败的高频原因,如版本号不一致、环境变量错误及模块未安装齐全等问题提供排查方案,并附带成功生成的日志示例,帮助开发者避免常见陷阱。

核心要点概述:

1. 确保使用 Python 32 位版本(安装包名为 python-3.6.1.exe)。

2. 安装所有项目所需的依赖模块(示例中博主使用 openpyxl,实际项目中需包含 urllib 下的 request、config 及 data 等模块)。

3. 下载并替换 PyInstaller 组件(获取 pyinstaller-develop.zip,将其中的 Pyinstaller 文件夹复制覆盖)。

4. 在控制台执行命令生成 exe 文件。

具体操作步骤记录如下:

C:\Python\Scripts>pip install request
C:\Python\Scripts>pip install config
C:\Python\Scripts>pip install data
C:\Python\Scripts>pyinstaller.exe -F structs2.py

成功生成的界面输出内容:

24957 INFO: checking EXE 24957 INFO: Building EXE because out00-EXE.toc is non existent 24957 INFO: Building EXE from out00-EXE.toc 24958 INFO: Appending archive to EXE C:\Python\Scripts\dist\structs2.exe 24975 INFO: Building EXE from out00-EXE.toc completed successfully.

此前多次尝试失败,总结 Python 3 转换 exe 失败的主要原因:

1. Python 开发环境版本或环境变量配置不一致。此前错误安装了 python-3.6.2rc1.exe 导致问题。

2. 严格注意版本号匹配,此前尝试多个版本均失败,最终全部卸载后重新安装才成功。

3. Python 依赖包必须安装完整,此前未安装 request、config 等包也是导致失败的原因之一。

曾出现的失败报错内容如下:

usage: setup.exe [global_opts] cmd1 [cmd1_opts] [cmd2 [cmd2_opts] ...]
or: setup.exe --help [cmd1 cmd2 ...]
or: setup.exe --help-commands
or: setup.exe cmd --help

解决方法为重新清理并安装开发环境,最终成功完成打包。

免责声明:本文内容仅供参考,不代表本站观点。转载或引用请注明出处。

Python 相关产品和应用

全部下载
Selenium

Selenium

4.51.0 · Windows

用于浏览器自动化和 Web 测试的 Python 工具。

scikit-learn

scikit-learn

1.9.1 · Windows

常用 Python 机器学习算法与模型评估工具库。

Black

Black

26.10.1 · Windows

强调一致性的 Python 自动代码格式化工具。

Ruff

Ruff

0.17.1 · macOS

由 Rust 编写的高速 Python 代码检查和格式化工具。

pytest

pytest

9.1.1 · Windows

简洁而强大的 Python 自动化测试框架。

FastAPI

FastAPI

0.146.0 · Windows

高性能 Python API 框架,支持类型提示和自动接口文档。

Flask

Flask

3.1.3 · Windows

轻量灵活的 Python Web 应用框架。

Django

Django

6.1.2 · Windows

成熟的 Python Web 框架,适合构建内容站点和业务系统。

Spyder

Spyder

6.1.7 · Windows

面向科学计算与数据分析的 Python 集成开发环境。

SciPy

SciPy

1.18.1 · Windows

面向科学、工程和技术计算的 Python 算法库。