教你使用pyinstaller打包Python教程


Posted in Python onMay 27, 2021

一、单个文件打包

1.1 简单打包

例如现在有一个main.py文件内容如下

import os
print("hello world")
os.system("pause")

运行结果如图

教你使用pyinstaller打包Python教程

现在用一下命令打包成一个可执行文件pyinstaller -F main.py

再同级目录下生成一个dist文件夹里面就会生成一个可执行文件,双击就可以执行

教你使用pyinstaller打包Python教程

1.2 带图标打包

有的时候为了美观,可以给可执行文件加一个图标,这时用这个命令pyinstaller -F main.py-i filename.ico

打包完成后把这个ico文件复制到dst和可执行文件一起就可以了

教你使用pyinstaller打包Python教程

二、项目多文件打包

上面只是一些简单的demo打包成可执行文件的简单方式,大多数时候需要打包的都是多个文件的项目,这个时候就会复杂一些,主要使用一下命令进行pyinstaller -D main.py -p other1.py -p other2.py [-w] -i flie.ico

对部分命令解释:

命令 作用
-F 打包成一个exe文件,就是不管原文件时多少个最终生成只是一个exe可执行文件,这种方式再大型项目中不适用,打开程序太慢
-D 以依赖的方式打包,类似于平时安装工具的方式,会有一对的库文件,一般项目建议这种方式
-p 主文件以外其他用到的python文件
-w 运行程序的时候不显示终端。如果不加的话就是做了UI界面,运行的时候也会跳出终端,这个视情况决定
-i 加载图标文件

这是部分用到的命令的解释,还有其他命令可以上官网查看文档查询。

例程如下:

有个项目有4个Python文件运行主程序效果如图

教你使用pyinstaller打包Python教程

用此命令打包pyinstaller -D MysherTools.py -p BLC.py -p consistencyCheck.py -p ui.py -w -i .\inco\tool.ico

生成如图所示的文件

教你使用pyinstaller打包Python教程

双击运行exe可执行文件效果如图

教你使用pyinstaller打包Python教程

一般出现如上的提示,都是用到的静态文件没有放在指定路径下,因为打包的时候ico文件是放在icon目录下,所以需要将这个目录拷贝到可执行文件的路径下。放到指定位置后运行正常如图

教你使用pyinstaller打包Python教程

注意:文件用到的静态文件一定要保证路径正常,不然运行会出错。

三、打包后文件太大

一般如果直接这么打包会导致打包后的文件特别大,这时候就需要创建一个虚拟环境,只安装项目需要的库文件,然后再打包,这样就会小很多,因为python环境下没用到的库也被打包进去导致体积太大。

到此这篇关于教你使用pyinstaller打包Python教程的文章就介绍到这了,更多相关pyinstaller打包Python内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Python 相关文章推荐
分析python服务器拒绝服务攻击代码
Jan 16 Python
python实现下载指定网址所有图片的方法
Aug 08 Python
python 将json数据提取转化为txt的方法
Oct 26 Python
pytorch中torch.max和Tensor.view函数用法详解
Jan 03 Python
简单了解Python write writelines区别
Feb 27 Python
Python selenium页面加载慢超时的解决方案
Mar 18 Python
python实现坦克大战
Apr 24 Python
Python过滤掉numpy.array中非nan数据实例
Jun 08 Python
django rest framework使用django-filter用法
Jul 15 Python
Python 实现一个计时器
Jul 28 Python
python 发送邮件的示例代码(Python2/3都可以直接使用)
Dec 03 Python
使用pandas或numpy处理数据中的空值(np.isnan()/pd.isnull())
May 14 Python
Matplotlib绘制混淆矩阵的实现
只需要100行Python代码就可以实现的贪吃蛇小游戏
PyTorch dropout设置训练和测试模式的实现
May 27 #Python
pytorch Dropout过拟合的操作
浅谈pytorch中的dropout的概率p
May 27 #Python
让文件路径提取变得更简单的Python Path库
Pytorch中的数据集划分&正则化方法
You might like
复杂检索数据并分页显示的处理方法
2006/10/09 PHP
一个用于mysql的数据库抽象层函数库
2006/10/09 PHP
php date()日期时间函数详解
2010/05/16 PHP
Discuz Uchome ajaxpost小技巧
2011/01/04 PHP
解决php的“It is not safe to rely on the system’s timezone settings”问题
2015/10/08 PHP
判断JavaScript对象是否可用的最正确方法分析
2008/10/03 Javascript
js限制文本框只能输入数字方法小结
2014/06/16 Javascript
js完美实现@提到好友特效(兼容各大浏览器)
2015/03/16 Javascript
使用AngularJS创建自定义的过滤器的方法
2015/06/18 Javascript
JS使用正则表达式除去字符串中重复字符的方法
2015/11/05 Javascript
AngularJS 模块化详解及实例代码
2016/09/14 Javascript
JavaScript Uploadify文件上传实例
2017/02/28 Javascript
移动端效果之Swiper详解
2017/10/09 Javascript
详解Vue一个案例引发「内容分发slot」的最全总结
2018/12/02 Javascript
vue-router路由模式详解(小结)
2019/08/26 Javascript
ajax jquery实现页面某一个div的刷新效果
2021/03/04 jQuery
[02:08]2014DOTA2国际邀请赛 430专访:力争取得小组前二
2014/07/11 DOTA
[03:42]2016国际邀请赛中国区预选赛首日现场玩家采访
2016/06/26 DOTA
详细解读Python中解析XML数据的方法
2015/10/15 Python
python3中获取文件当前绝对路径的两种方法
2018/04/26 Python
Python 变量类型详解
2018/10/10 Python
基于Pyinstaller打包Python程序并压缩文件大小
2020/05/28 Python
Python爬虫之Selenium实现键盘事件
2020/12/04 Python
CSS3区域模块region相关编写示例
2015/08/28 HTML / CSS
教你使用Canvas处理图片的方法
2017/11/28 HTML / CSS
英国时尚家具、家居饰品及礼品商店:Graham & Green
2016/09/15 全球购物
舞会礼服和舞会鞋:PromGirl
2019/04/22 全球购物
Melissa鞋英国官方网站:Nonnon
2019/05/01 全球购物
出纳岗位职责模板
2013/11/27 职场文书
杠杆的科学教学反思
2014/01/10 职场文书
初中优秀学生评语
2014/12/29 职场文书
雾霾停课通知
2015/04/24 职场文书
魂断蓝桥观后感
2015/06/10 职场文书
追悼词范文大全
2015/06/23 职场文书
Python语言中的数据类型-序列
2022/02/24 Python
《巫师》是美食游戏?CDPR10月将推出《巫师》官方食谱
2022/04/03 其他游戏