将python程序打包成exe

将python程序打包成exe,这样我们下次想要实用自己写的python时,就不需要打开python或者编辑器了,可以直接点了exe运行,是个比较实用的功能。

参考链接:https://www.cnblogs.com/mini-monkey/p/11195309.html

参考链接:https://blog.csdn.net/dyz_123456/article/details/80593966

参考链接:https://mp.weixin.qq.com/s/rL84_hBqH4CX-SmUXnjKAQ

 

安装pyinstaller

pip install pyinstaller

 在windows中,打开cmd

最终,我安装成功了,如下图所示。

如果安装失败了,可能是time out,然后可以通过以下链接下载:

https://www.lfd.uci.edu/~gohlke/pythonlibs/

找到pyinstaller

下载之后,放在一个指定位置,然后cmd之后cd到该位置

pip install PyInstaller‑3.6‑py2.py3‑none‑any.whl

打包exe

若需将xxx.py文件打包,只需在终端执行:

pyinstaller xxx.py

注:终端需切换至xxx.py文件所在目录下。

常用可选项及说明:

  • -F:打包后只生成单个exe格式文件;
  • -D:默认选项,创建一个目录,包含exe文件以及大量依赖文件;
  • -c:默认选项,使用控制台(就是类似cmd的黑框);
  • -w:不使用控制台;
  • -p:添加搜索路径,让其找到对应的库;
  • -i:改变生成程序的icon图标。

比如,我把上个博客中写的python文件打包成exe文件,

上个博客:python实现音乐播放器https://blog.csdn.net/yql_617540298/article/details/112434047

E:\Python\music player>pyinstaller -F music.py -w

最终结果:

整个打包的过程,可以查看一下这个视频,来源于:https://mp.weixin.qq.com/s/rL84_hBqH4CX-SmUXnjKAQ

python打包教程

 

不过呢,我没有这么顺利,我出现了错误。

我成功生成了exe文件。不过在点击exe文件时,出现了如下图所示的错误。

参考博客:https://blog.csdn.net/lcsjdn/article/details/88838125

参考博客:https://blog.csdn.net/haimianjie2012/article/details/108058354

参考博客:https://www.cnblogs.com/sunchuankai/p/14174261.html

其中,有一个比较重要的问题是代码里面所涉及到的图片路径之类的都需要是绝对路径,而不是相对路径。

所以,我把上个博客上的代码更改了一下:

由原来的

Frame.resizable(False,False)
file = Image.open('./music player/picture/image.jpg')
img = ImageTk.PhotoImage(file)
background = tkinter.Label(Frame, image=img)
background.image = img
background.pack()

更改为:

Frame.resizable(False,False)
file = Image.open('E:\Python\music player\picture\image.jpg')
img = ImageTk.PhotoImage(file)
background = tkinter.Label(Frame, image=img)
background.image = img
background.pack()

好了,这样就可以了,然后打开:

E:\Python\music player\dist

点击这个就可以打开程序了,

评论 11
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

蹦跶的小羊羔

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值