教你使用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三元运算符实现方法
Dec 17 Python
使用Python获取Linux系统的各种信息
Jul 10 Python
python中PIL安装简单教程
Apr 21 Python
Python操作使用MySQL数据库的实例代码
May 25 Python
PyChar学习教程之自定义文件与代码模板详解
Jul 17 Python
Python基于回溯法子集树模板解决全排列问题示例
Sep 07 Python
教你使用python实现微信每天给女朋友说晚安
Mar 23 Python
python如何读取bin文件并下发串口
Jul 05 Python
python+django+rest框架配置创建方法
Aug 31 Python
Pytorch 实现sobel算子的卷积操作详解
Jan 10 Python
python字典按照value排序方法
Dec 28 Python
python实现对doc、txt、xls等文档的读写操作
Apr 02 Python
Matplotlib绘制混淆矩阵的实现
只需要100行Python代码就可以实现的贪吃蛇小游戏
PyTorch dropout设置训练和测试模式的实现
May 27 #Python
pytorch Dropout过拟合的操作
浅谈pytorch中的dropout的概率p
May 27 #Python
让文件路径提取变得更简单的Python Path库
Pytorch中的数据集划分&正则化方法
You might like
php mb_substr()函数截取中文字符串应用示例
2014/07/29 PHP
eclipse php wamp配置教程
2016/06/30 PHP
ThinkPHP框架表单验证操作方法
2017/07/19 PHP
PHP实现动态压缩js与css文件的方法
2018/05/02 PHP
使用 PHP Masked Package 屏蔽敏感数据的实现方法
2019/10/15 PHP
javascript 流畅动画实现原理
2009/09/08 Javascript
javascript 鼠标拖动图标技术
2010/02/07 Javascript
可选择和输入的下拉列表框示例
2013/11/05 Javascript
php和js对数据库图片进行等比缩放示例
2014/04/28 Javascript
firefox浏览器用jquery.uploadify插件上传时报HTTP 302错误
2015/03/01 Javascript
基于Node.js实现nodemailer邮件发送
2016/01/26 Javascript
js简单倒计时实现代码
2016/04/30 Javascript
jQuery获取多种input值的简单实现方法
2016/06/20 Javascript
Bootstrap选项卡与Masonry插件的完美结合
2016/07/06 Javascript
微信小程序 swiper制作tab切换实现附源码
2017/01/21 Javascript
js/jq仿window文件夹移动/剪切/复制等操作代码
2017/03/08 Javascript
浅谈webpack和webpack-cli模块源码分析
2020/01/19 Javascript
python实现的生成随机迷宫算法核心代码分享(含游戏完整代码)
2014/07/11 Python
Python深入学习之闭包
2014/08/31 Python
Python中函数的用法实例教程
2014/09/08 Python
Python常用库推荐
2016/12/04 Python
Python爬取qq music中的音乐url及批量下载
2017/03/23 Python
Python之Scrapy爬虫框架安装及使用详解
2017/11/16 Python
对python requests的content和text方法的区别详解
2018/10/11 Python
Python字符串匹配之6种方法的使用详解
2019/04/08 Python
Django--权限Permissions的例子
2019/08/28 Python
HTML5离线应用与客户端存储的实现
2018/05/03 HTML / CSS
html5 横向滑动导航栏的方法示例
2020/05/08 HTML / CSS
世嘉游戏英国官方商店:SEGA Shop UK
2019/09/20 全球购物
世界上最伟大的马产品:Equiderma
2020/01/07 全球购物
大专毕业生求职信
2014/07/05 职场文书
工程催款通知书
2015/04/17 职场文书
2019生态环境保护倡议书!
2019/07/03 职场文书
Pytorch 中net.train 和 net.eval的使用说明
2021/05/22 Python
sql字段解析器的实现示例
2021/06/23 SQL Server
Win11安装受阻怎么办? Windows11安装问题与解决方案汇总
2021/11/21 数码科技