【py打包exe】python打包python文件为exe文件
·
pyinstaller
官网
https://pyinstaller.org/en/stable/usage.html

安装
pip install pyinstaller
在python文件所在路径
pyinstaller -F -w -i 图片名.ico 脚本名.py
-w:打包工作台,就是那个黑色的界面,如果有GUI就要加-w,例子需要在工作台打印就不能加
w是小写
-i:打包成指定图标,不做图标就去掉图片名和-i
2.将exe文件和资源文件放到一起再执行exe文件
./表示当前文件路径
在以下代码后面加上py的文件名
pyinstaller -F
如果打包fastapi程序注意路径的问题
以下会使用app示例,打包正确
app = FastAPI(title="test")
uvicorn.run(app, host=Config.HOST, port=Config.PORT, reload=False)
以下会查找main.py文件,如果没有就会出现路径报错
app = FastAPI(title="test")
uvicorn.run(app=‘main:app’, host=Config.HOST, port=Config.PORT, reload=False)
打包dll文件
pyinstaller -F --add-binary "download/libs/api-ms-win-core-path-l1-1-0.dll;libs/api-ms-win-core-path-l1-1-0.dll" main.py
–add-binary后面以分号分隔的参数:第一个为dll文件当前存放路径,第二个为打包好exe后,程序从哪里找到这个dll
常用命令
某些库使用动态导入或延迟导入,PyInstaller 的静态分析无法检测到使用以下参数
列举出在脚本代码中看不到的某个导入项,可多次使用
--hidden-import MODULENAME
从指定的包或模块中收集所有的子模块、数据文件和二进制文件。此选项可以多次使用。
--collect-all MODULENAME
构建前清理临时文件
--clean
nuitka
官网
https://github.com/Nuitka/Nuitka
将 Python 代码编译为 C 语言代码,再编译成 exe,运行效率更高
pip install nuitka
打包
python -m nuitka --standalone --onefile main.py
更多推荐

所有评论(0)