教你使用pyinstaller打包Python教程

 更新时间:2021年05月27日 15:08:06   作者:wtzhu_13  
今天带大家学习使用pyinstaller打包Python,文中有非常详细的图文示例及代码,对正在学习python的小伙伴们很有帮助,需要的朋友可以参考下

一、单个文件打包

1.1 简单打包

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

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

运行结果如图

在这里插入图片描述

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

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

在这里插入图片描述

1.2 带图标打包

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

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

在这里插入图片描述

二、项目多文件打包

上面只是一些简单的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 -D MysherTools.py -p BLC.py -p consistencyCheck.py -p ui.py -w -i .\inco\tool.ico

生成如图所示的文件

在这里插入图片描述

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

在这里插入图片描述

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

在这里插入图片描述

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

三、打包后文件太大

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

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

相关文章

  • 利用PyQt5制作一个豆瓣电影信息查看器

    利用PyQt5制作一个豆瓣电影信息查看器

    这篇文章主要介绍了如何通过PyQt5制作一个查看器,可以查看豆瓣前100名电影的信息,当然这个爬取信息比较简单。感兴趣的小伙伴可以试一试
    2022-01-01
  • python中如何打包用户自定义模块

    python中如何打包用户自定义模块

    在本篇文章里小编给大家整理的是一篇关于python中如何打包用户自定义模块的相关文章,有兴趣的朋友们可以参考下。
    2020-09-09
  • python发送arp欺骗攻击代码分析

    python发送arp欺骗攻击代码分析

    这篇文章主要介绍了python发送arp欺骗攻击的方法,大家碰到这样的事情可以预防一下
    2014-01-01
  • Python稀疏矩阵scipy.sparse包使用详解

    Python稀疏矩阵scipy.sparse包使用详解

    本文主要介绍了Python稀疏矩阵scipy.sparse包使用详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2023-02-02
  • Python实现OCR识别之pytesseract案例详解

    Python实现OCR识别之pytesseract案例详解

    这篇文章主要介绍了Python实现OCR识别之pytesseract案例详解,本篇文章通过简要的案例,讲解了该项技术的了解与使用,以下就是详细内容,需要的朋友可以参考下
    2021-07-07
  • Python中关于 *args与**args的用法及说明

    Python中关于 *args与**args的用法及说明

    这篇文章主要介绍了Python中关于 *args与**args的用法及说明,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2023-02-02
  • pyqt5 QScrollArea设置在自定义侧(任何位置)

    pyqt5 QScrollArea设置在自定义侧(任何位置)

    这篇文章主要介绍了pyqt5 QScrollArea设置在自定义侧(任何位置),文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2019-09-09
  • Python读取VOC中的xml目标框实例

    Python读取VOC中的xml目标框实例

    这篇文章主要介绍了Python读取VOC中的xml目标框实例,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-03-03
  • python使用正则筛选信用卡

    python使用正则筛选信用卡

    这篇文章主要为大家详细介绍了python使用正则筛选信用卡,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2019-01-01
  • MoviePy常用剪辑类及Python视频剪辑自动化

    MoviePy常用剪辑类及Python视频剪辑自动化

    这篇文章主要介绍了MoviePy常用剪辑类及Python视频剪辑自动化,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2020-12-12

最新评论