教你使用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访问sqlserver示例
Feb 10 Python
Python脚本实现网卡流量监控
Feb 14 Python
win10系统中安装scrapy-1.1
Jul 03 Python
python 把数据 json格式输出的实例代码
Oct 31 Python
Python使用matplotlib简单绘图示例
Feb 01 Python
python 爬虫一键爬取 淘宝天猫宝贝页面主图颜色图和详情图的教程
May 22 Python
PyCharm代码整体缩进,反向缩进的方法
Jun 25 Python
python中import与from方法总结(推荐)
Mar 21 Python
让你Python到很爽的加速递归函数的装饰器
May 26 Python
解决python中显示图片的plt.imshow plt.show()内存泄漏问题
Apr 24 Python
python 密码学示例——理解哈希(Hash)算法
Sep 21 Python
用 python 进行微信好友信息分析
Nov 28 Python
Matplotlib绘制混淆矩阵的实现
只需要100行Python代码就可以实现的贪吃蛇小游戏
PyTorch dropout设置训练和测试模式的实现
May 27 #Python
pytorch Dropout过拟合的操作
浅谈pytorch中的dropout的概率p
May 27 #Python
让文件路径提取变得更简单的Python Path库
Pytorch中的数据集划分&正则化方法
You might like
PHP生成带有雪花背景的验证码
2008/09/28 PHP
PHP 文章中的远程图片采集到本地的代码
2009/07/30 PHP
php不允许用户提交空表单(php空值判断)
2013/11/12 PHP
基于PHP技术开发客服工单系统
2016/01/06 PHP
PHP封装mysqli基于面向对象的mysql数据库操作类与用法示例
2019/02/25 PHP
php使用lua+redis实现限流,计数器模式,令牌桶模式
2019/04/04 PHP
总结一些js自定义的函数
2006/08/05 Javascript
Input 特殊事件onpopertychange和oninput
2009/06/17 Javascript
基于jquery.Jcrop的头像编辑器
2010/03/01 Javascript
jquery获取选中的文本和值的方法
2014/07/08 Javascript
使用pjax实现无刷新更改页面url
2015/02/05 Javascript
Position属性之relative用法
2015/12/14 Javascript
jquery trigger实现联动的方法
2016/02/29 Javascript
浅谈jquery选择器 :first与:first-child的区别
2016/11/20 Javascript
Vue实现typeahead组件功能(非常靠谱)
2017/08/26 Javascript
vue使用xe-utils函数库的具体方法
2018/03/06 Javascript
vue结合Echarts实现点击高亮效果的示例
2018/03/17 Javascript
微信小程序系列之自定义顶部导航功能
2019/05/21 Javascript
JS闭包原理及其使用场景解析
2020/12/03 Javascript
python判断windows隐藏文件的方法
2014/03/21 Python
Python中列表和元组的相关语句和方法讲解
2015/08/20 Python
Python中functools模块的常用函数解析
2016/06/30 Python
PyQt 线程类 QThread使用详解
2017/07/16 Python
python如何爬取网站数据并进行数据可视化
2019/07/08 Python
python 图像判断,清晰度(明暗),彩色与黑白实例
2020/06/04 Python
Python字符串三种格式化输出
2020/09/17 Python
如何用Python 实现全连接神经网络(Multi-layer Perceptron)
2020/10/15 Python
联想加拿大官方网站:Lenovo Canada
2018/04/05 全球购物
linux下进程间通信的方式
2013/01/23 面试题
九年级英语教学反思
2014/01/31 职场文书
事业单位考核材料
2014/05/21 职场文书
我爱家乡演讲稿
2014/09/12 职场文书
毕业论文致谢格式模板
2015/05/14 职场文书
爱护环境建议书
2015/09/14 职场文书
SQL CASE 表达式的具体使用
2022/03/21 SQL Server
MySQL中TIMESTAMP类型返回日期时间数据中带有T的解决
2022/12/24 MySQL