主体参考B站视频,加入了一些个人遇到的问题和解决方法
【python教程|pyinstaller打包程序的流程和遇到的坑】 https://www.bilibili.com/video/BV14t4y177fk/?share_source=copy_web&vd_source=7019b8a81779f77f750a09ec0c989fed
以测试代码餐厅管理系统.py为例
首先,创建虚拟环境
conda create --name restaurant python=3
“restaurant”为自己命名的环境的名称,随便取
运行结果
此处输入”y“
结果:
此时需要切换至终端(win+r,cmd)
使用cd 命令切换至py文件所在目录,输入指令进入虚拟环境
activate restaurant
接下来安装第三方库,我使用了pymysql库,
使用清华的镜像网站(安装更快)
具体的代码
pip install pymysql -i https://pypi.tuna.tsinghua.edu.cn/simple
接下来安装 pyinstaller 库,同样的操作
pip install pyinstaller -i https://pypi.tuna.tsinghua.edu.cn/simple
最后输入
pyinstaller -F -w main.py
注意事项:如果使用到了input(),需要带有控制台窗口,否则生成命令中加了-w参数,运行exe会有如下报错,所以需要去掉-w参数
成功结果显示
去 D:\餐厅程序转exe 找到 dist 文件夹,找到 餐厅管理系统.exe 文件点击运行
成功运行!!(此处python程序连接着数据库,无需其他操作依然可以正常运行)
可能遇到的问题
报错:Traceback (most recent call last): File "main.py", line 3, in。。。。。。。。。。
解决方法:
pyinstaller -F *.py
pyinstaller -F main.py
命令参数介绍:
-F 表示生成单个可执行文件
-w 表示去掉控制台窗口,这在GUI界面时非常有用。不过如果是命令行程序的话那就把这个选项删除
-p 表示你自己自定义需要加载的类路径,一般情况下用不到
-i 表示可执行文件的图标
执行命名后生成的exe文件放在dist文件夹中
如果使用到了input(),需要带有控制台窗口,否则生成命令中加了-w参数,运行exe会有如下报错,所以需要去掉-w参数
————————————————
版权声明:本文为CSDN博主「L888666Q」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/L888666Q/article/details/121533065