在日常工作中,我们经常会遇到这样的需求:
- 写了一个 python 脚本,想给同事用
- 对方电脑没有 python 环境
- 不想教对方装 python、装依赖
- 希望直接给一个
.exe,双击就能跑
这篇文章不讲复杂原理、不搞工程化配置,只讲“怎么最简单地把 python 脚本打成 exe”。
一、先说结论:用 pyinstaller 就够了
目前最简单、最成熟、使用最多的方案是 pyinstaller。
它的特点是:
- 使用简单
- 命令直观
- 对新手友好
- 适合内部工具、小脚本、自动化程序
本文所有示例,全部基于 pyinstaller。
二、准备工作(只做一次)
确保你有 python 环境(windows)
在命令行中执行:
python --version
如果能看到版本号,说明 python 已安装。
安装 pyinstaller
pip install pyinstaller
安装完成后验证:
pyinstaller --version
三、最简单的打包方式(一条命令)
假设你的脚本文件是:
main.py
最基础的打包命令
pyinstaller -f main.py
解释:
-f:打包成单个 exe 文件main.py:你要打包的脚本
打包完成后,会生成:
dist/main.exe
拿走 main.exe 就可以使用了。
四、打包后你会看到哪些文件?(不用慌)
第一次打包时,当前目录会出现:
build/ dist/ main.spec
你只需要关心:
dist/main.exe
其他文件:
build/:中间构建文件*.spec:配置文件(简单打包可以忽略)
五、一个更实用的打包命令(推荐)
在实际使用中,很多人不想每次去 dist/ 目录里找 exe。
先cd到脚本同级目录下:
pyinstaller --onefile --distpath d:\release main.py
这条命令是做什么的?
一句话说明:
把 main.py 打包成一个 exe,并直接输出到 d:\release 目录
打包完成后:
d:\release\main.exe
参数解释(非常简单)
--onefile
- 等价于
-f - 表示打包成一个 exe 文件
--distpath d:\release
- 指定 exe 的输出目录
- 不使用默认的
dist/目录
main.py
- 要打包的 python 脚本
为什么这个命令很实用?
- 打完包,exe 直接就能拿走
- 不用关心
dist/、build/ - 非常适合内网、脚本化、一次性 交付
六、改个 exe 名字(很常见)
如果你不想生成 main.exe,可以这样:
pyinstaller -f -n mytool main.py
生成:
dist/mytool.exe
配合 --distpath:
pyinstaller -f -n mytool --distpath d:\release main.py
七、不想弹黑窗口(可选)
如果你的脚本是:
- gui 程序(tkinter / pyqt)
- 自动化脚本
- 不需要命令行输出
可以隐藏黑窗口:
pyinstaller -f -w main.py
说明:
-w/--noconsole:不显示控制台窗口
如果你的脚本靠 print() 看日志,不建议加 -w。
八、一个“够用就好”的通用命令模板
推荐直接用下面这条
pyinstaller -f -n mytool --distpath d:\release main.py
如果不想要黑窗口:
pyinstaller -f -w -n mytool --distpath d:\release main.py
到此这篇关于python脚本生成exe的实用指南的文章就介绍到这了,更多相关python脚本生成exe内容请搜索代码网以前的文章或继续浏览下面的相关文章希望大家以后多多支持代码网!
发表评论