将Python脚本打包成exe文件
作者:编程的赛赛 时间:2021-06-08 12:21:55
相信很多朋友在用Python写完代码之后都迫不及待的想发给对象交流(装X),但是发源码又要求对方有对应的解释器,一般是行不通的,所以我们要把源码打包成可执行的.exe文件,方便广大用户使用。
1.安装依赖
打开命令行【开始->搜索->cmd】
pip install pyinstaller
等待安装成功
2.整合资源
将代码所需要加载的文件资源【图片、因为、文档等】整合一下
放置在一个或多个文件夹下
Import的脚步不用整合,因为pyinstaller会自动帮你打包这些脚本的
例如我们写个例子demo.py,显示一张图片并打印’你好呀!’
import cv2
imgFilePath = 'D:/picture/image.jpg'
img = cv2.imread(imgFilePath)
cv2.imshow('img', img)
print('你好!')
cv2.waitKey()
这时候我们就要新建一个文件夹Image,将图片文件夹放入
3.修改脚本并测试
这一步特别重要,因为我们的资源和脚本一般是分开的,并且不可知用户会把我们的文件夹放在哪个路径里
所以需要将所有路径(读取和写入)改为【相对路径】
./表示程序当前所在路径,故例子中的路径改为
imgFilePath = './image/image.jpg'
改完路径后不要忘了测试程序能否正确运行哦!
4.准备图标(可略过)
如果想要打包好的程序打包成自己想要的图标
就先准备一张图片放在文件夹中吧!
注意需要用.ico格式的图片才有效哦
例子:
5.pyinstaller打包
打开命令行窗口,将路径改为脚本所在文件夹
执行命令
命令格式为
Pyinstaller -F -w -i [图片名].ico [脚本名].py
注意要加文件后缀哦!
-w:不打包工作台[就是那个黑色的界面,如果有GUI就要加-w,例子需要在工作台打印‘你好’,就不能加]
-i:打包成指定图标,如果懒得做图标就去掉图片名和-i
6.结论
找到生成的dist文件夹,里面就能看见exe文件了!
激动的心,颤抖的手,是不是马上想执行一下呀?
但是一定会出错的,因为相对路径在dist但是dist没有资源文件夹
我们应该新建一个文件,里面放入所有资源文件夹和exe文件
测试无误后压缩发给别人,别人解压后就可以使用了!
例子中我们将exe例子文件夹压缩发送就ok了
来源:https://blog.csdn.net/a13337649640/article/details/122819719
![](/images/zang.png)
![](/images/jiucuo.png)
猜你喜欢
Python django框架 web端视频加密的实例详解
![](https://img.aspxhome.com/file/2023/7/101107_0s.png)
Win10+GPU版Pytorch1.1安装的安装步骤
![](https://img.aspxhome.com/file/2023/8/105568_0s.png)
互联网产品设计师职业生涯
Python直接赋值与浅拷贝和深拷贝实例讲解使用
![](https://img.aspxhome.com/file/2023/3/102323_0s.jpg)
JS实现图片手风琴效果
![](https://img.aspxhome.com/file/2023/6/56066_0s.jpg)
css基础教程属性篇之盒子模型
![](https://img.aspxhome.com/file/UploadPic/20087/29/2008729121433524s.jpg)
Golang Gin局部和全局中间件使用详解
![](https://img.aspxhome.com/file/2023/7/86297_0s.jpg)
python open读取文件内容时的mode模式解析
Python使用微信itchat接口实现查看自己微信的信息功能详解
![](https://img.aspxhome.com/file/2023/2/94692_0s.png)
Python基于pygame实现图片代替鼠标移动效果
![](https://img.aspxhome.com/file/2023/9/109329_0s.png)
网站LOGO设计规范的思考--2.网络LOGO的设计
学生如何免费使用Pycharm专业版学生认证教程
![](https://img.aspxhome.com/file/2023/7/95587_0s.jpg)
pycharm 使用心得(四)显示行号
![](https://img.aspxhome.com/file/2023/9/101489_0s.jpg)
ASP进阶教程Ⅶ:留言簿设置密码验证
Golang 内存管理简单技巧详解
Python中xlsx文件转置操作详解(行转列和列转行)
![](https://img.aspxhome.com/file/2023/0/92310_0s.jpg)
Python异步爬虫requests和aiohttp中代理IP的使用
![](https://img.aspxhome.com/file/2023/2/101302_0s.png)
python中Requests发送json格式的post请求方法
![](https://img.aspxhome.com/file/2023/3/66773_0s.png)
Python包资源下载路径报404解决方案
![](https://img.aspxhome.com/file/2023/4/76744_0s.png)
PyTorch+LSTM实现单变量时间序列预测
![](https://img.aspxhome.com/file/2023/5/92445_0s.jpg)