在VS Code和VS2022中打包python程序
PyInstaller是一个将Python程序转换为独立可执行文件的程序,在Windows,Linux,MacOSX,AIX和Solaris下。与类似工具相比,它的主要优点是PyInstaller自2.3以来与任何版本的Python一起工作,它通过透明压缩构建较小的可执行文件,它是完全多平台的,并使用操作系统支持来加载动态库,从而确保完全兼容。PyInstaller的主要目标是与开箱即用的第三方软
在VS Code中打包python程序
安装VS Code此处略过
python及配置环境变量
一、Windows 系统配置
方法 1:安装时自动添加(推荐)
下载 Python 3.13 安装包,选择 Windows Installer (64-bit)。
勾选关键选项
运行安装程序时,确保勾选以下两项:
-
Add Python to PATH(自动添加环境变量)
-
Install launcher for all users(全局安装启动器)
-
建议勾选
Install for all users
(避免权限问题)
自定义安装路径(可选)
若需修改默认安装路径(如 C:\Python313
),需确保路径无空格或特殊字符
方法 2:手动添加环境变量
-
找到 Python 安装路径
默认路径通常为C:\Users\<用户名>\AppData\Local\Programs\Python\Python313
,或自定义路径。 -
添加环境变量
-
右键点击“此电脑” → “属性” → “高级系统设置” → “环境变量”。
-
在“系统变量”中找到
Path
,点击“编辑” → “新建”,添加以下路径:
Python安装目录(如 C:\Python313) Python\Scripts目录(如 C:\Python313\Scripts)
-
-
验证配置
打开命令提示符,输入:
python --version # 应显示 Python 3.13.x
pip list # 查看已安装的包
二、Linux 系统配置
方法 1:通过包管理器安装(以 Ubuntu 为例)
- 安装 Python 3.13
sudo apt update
sudo apt install python3.13
配置软链接(可选)
若需将 python3
默认指向 3.13:
sudo update-alternatives --install /usr/bin/python3 python3 /usr/bin/python3.13 1
sudo update-alternatives --config python3 # 选择 3.13
方法 2:手动编译安装
- 下载源码并编译
wget https://www.python.org/ftp/python/3.13.0/Python-3.13.0.tgz
tar -zxvf Python-3.13.0.tgz
cd Python-3.13.0
./configure --enable-optimizations
make && sudo make install
添加环境变量
编辑 ~/.bashrc
或 ~/.zshrc
,添加:
export PATH="/usr/local/bin:$PATH"
执行 source ~/.bashrc
生效
安装Pyinstaller
Pyinstaller简介
PyInstaller是一个将Python程序转换为独立可执行文件的程序,在Windows,Linux,Mac OS X,AIX和Solaris下。与类似工具相比,它的主要优点是PyInstaller自2.3以来与任何版本的Python一起工作,它通过透明压缩构建较小的可执行文件,它是完全多平台的,并使用操作系统支持来加载动态库,从而确保完全兼容。
PyInstaller的主要目标是与开箱即用的第三方软件包兼容。这意味着,使用PyInstaller,所有使外部包工作所需的技巧已经集成在PyInstaller本身中,因此不需要用户干预。您永远不需要在wiki中查找技巧,并对文件或设置脚本进行自定义修改。例如,完全支持像PyQt,Django或matplotlib这样的库,而无需手动处理插件或外部数据文件。
安装Pyinstaller
-
在win系统下:win+R输入cmd回车进入系统管理员命令行窗口,输入以下命令
-
where python
查看安装python的位置,检查其是否已经安装
-
输入以下命令
pip install pyinstaller
安装pyinstaller,等待其安装完成即可。
-
打开你安装python的位置,找到
Scripts
文件夹,打开若有pyinstaller应用程序,说明安装成功。
-
配置环境变量
在电脑设置->系统信息中找到
高级系统设置
或在电脑搜索框中直接搜索环境变量,点击,弹出对话框后点击右下角的环境变量,接着在系统变量中找到Path
双后点击选择新建,最后pyinstaller应用程序所在文件夹的路径添加进去即可,点击确定即可;若已经存在,则请忽略此步骤。
打包python程序
打包python程序
-
在VS Code的运行窗口中输入以下命令
pyinstaller -F yourpython.py
若成功执行命令,则在该程序所在文件夹同目录下生成
dist
和build
这两个文件夹,可执行程序就在文件夹dist
里面,双击即可运行 -
指定输出路径
pyinstaller "two number sum.py" --distpath=D:\Code\1 --onedir
--distpath=D:\Code\1
:指定最终生成的文件输出到 D:\Code\1
目录。--onedir
:等价于 -D,生成多文件目录结构(可省略,因为默认就是此模式)改成onefile
也可以,见[常用参数1](# 基础命令)
pyinstaller "two number sum.py" --distpath=D:\Code\1 --onefile
- 更多用法请前往[pyinstaller的一些语法](# pyinstaller的一些用法)
常见问题
- 文件名空格:若程序名名包含空格(如
two number sum.py
),需用引号包裹路径,否则会被解析为多个参数。如
pyinstaller -F "two number sum.py"
- 路径问题:确保当前目录(
PS D:\Code\python>
)下存在该程序,否则会报错“找不到文件”。
pyinstaller的一些用法
基础命令
- 基本打包
pyinstaller your_script.py
生成dist
文件夹,包含可执行文件及依赖
常用参数
- 生成单个可执行文件
pyinstaller --onefile your_script.py
或简写为 -F
,将所有依赖打包为单个文件(推荐)
即
pyinstaller -F your_script.py
- 隐藏控制台窗口(GUI程序适用)
pyinstaller --windowed your_script.py # Windows
pyinstaller --noconsole your_script.py # macOS/Linux
或简写为 -w
(Windows)或 -c
(macOS)
- 添加图标
pyinstaller --icon=app.ico your_script.py
支持.ico
(Windows)或.icns
(macOS)格式
- 包含额外数据文件
pyinstaller --add-data "config.ini;." your_script.py # Windows
pyinstaller --add-data "config.ini:." your_script.py # macOS/Linux
格式为 源文件路径:目标路径
- 指定输出路径
通过 --distpath
(或 -d
)参数指定生成文件的存放目录:
pyinstaller your_script.py --distpath /path/to/output
默认行为:未指定时,生成文件默认存放在当前目录下的 dist
文件夹中
路径类型:支持相对路径和绝对路径,例如:
-
相对路径:
--distpath ./build
(当前目录下的build
文件夹) -
绝对路径:(Windows)
pyinstaller your_script.py --distpath D:\dist_output
注意--distpath
不能缩写成-D
,默认是多文件目录结构,可在后面添加–onefile来打包为单个文件,即
pyinstaller your_script.py --distpath /path/to/output --onefile
- (Linux/macOS)
pyinstaller your_script.py --distpath /home/user/dist
- 清理临时文件
pyinstaller --clean your_script.py
打包前自动清理旧文件
高级场景
- 处理动态库或隐式导入模块
pyinstaller --hidden-import=module_name your_script.py
解决模块未被自动识别的问题
多平台打包
pyinstaller --onefile --noconsole your_script.py # macOS/Linux
需注意不同系统的路径分隔符(Windows用;
,Linux/macOS用:
)
完整示例
pyinstaller --noconfirm --onefile --windowed \
--icon="app.ico" --hidden-import="PIL" \
--add-data "resources;resources" \
--name="MyApp" main.py
相关参数解释:
-
--noconfirm
:跳过覆盖确认 -
--hidden-import
:手动添加依赖模块 -
--add-data
:包含外部资源文件
注意事项
路径问题:避免文件名或路径中的中文/空格
依赖管理:建议在虚拟环境中打包,确保依赖一致性
调试:若打包后运行失败,可先使用 -D
(默认目录模式)测试依赖完整性
在VS2022中打包
同上,完成Pyinstaller的安装,并且已经配置好VS2022的Python运行环境(即在VS2022中可以运行Python程序)
配置教程
- 在VS2022中新建一个Python程序,如图
之后的步骤参考[上面VS Code中的4.打包Python程序](# 打包python程序),由于VS2022中,Python源程序一般不会在当前目录下,所以建议采用绝对路径,相对路径一般也行不通,所以采用绝对路径是最好且通用的选择。
同样在安装Python的目录下会生成一个名为build
的文件夹,而dist
文件夹只在你选择在当前目录生成下生成可执行程序,才会在
Python的安装目录中生成,所以强烈建议采用自定义输出!!!
最后,如果你觉得本文对你有所帮助,请给我点个❤️

GitCode 天启AI是一款由 GitCode 团队打造的智能助手,基于先进的LLM(大语言模型)与多智能体 Agent 技术构建,致力于为用户提供高效、智能、多模态的创作与开发支持。它不仅支持自然语言对话,还具备处理文件、生成 PPT、撰写分析报告、开发 Web 应用等多项能力,真正做到“一句话,让 Al帮你完成复杂任务”。
更多推荐
所有评论(0)