zoukankan      html  css  js  c++  java
  • 记录Pyinstaller库将python脚本打包为exe文件的使用

    python脚本在没有安装python的机器上是不能直接运行,需要借助第三方库将脚本打包成exe文件,进而运行python程序。

    本文记录一下Pyinstaller库打包py文件为exe的使用方法。

    一、安装Pyinstaller库,pip install pyinstaller 这个不废话了。

    二、简单的py程序,可以命令行进入pyinstaller所在的文件夹(如果没有配置环境变量的话,),直接执行(但是不推荐)。
    在这里插入图片描述在这里插入图片描述

    pyinstaller -F main.py或者pyinstaller -D main.py就可以

    -F 表示打包为单个exe文件
    -D 表示打包为一个文件夹,里面有很多文件

    三、推荐这样来做

    1、考虑到项目复杂要做很多配置, 我们先来生成一个打包配置文件

    执行命令pyi-makespec -F main.py(也可以pyi-makespec -D main.py等等), 然后你就会在main.py的同级目录下看到main.spec文件. 这个文件的主要作用就是指定打包的各种配置。
    在这里插入图片描述

    2、查看.spec配置文件。例如,如果在打包过程中提示Matplotlib出错,而在程序中,未包括使用Matplotlib库,可以在封装的时候不导入这个库,方法是在spec文件中的excludes行加上excludes=['matplotlib']
    在这里插入图片描述

    3、执行pyinstaller xx.spec命令重新封装一遍。

    在这里插入图片描述
    打包好的程序会放在当前文件夹下一个叫dist的文件夹里面。

    四、其他打包的命令(前提是如果没有配置环境变量的话,要先进入pyinstaller所在的文件夹)

    pyinstaller -F main.py 打包成单个文件
    pyinstaller -D main.py 打包为文件夹
    pyinstaller -D -i xxx.ico main.py 定制图标

    -i xxx.ico 表示自定义exe图标的样式

    附件:pyinstaller相关参数

    常用的就是-F -D

    -F, –onefile 打包一个单个文件,如果你的代码都写在一个.py文件的话,可以用这个,如果是多个.py文件就别用
    -D, –onedir 打包多个文件,在dist中生成很多依赖文件,适合以框架形式编写工具代码,我个人比较推荐这样,代码易于维护
    -K, –tk 在部署时包含 TCL/TK
    -a, –ascii 不包含编码.在支持Unicode的python版本上默认包含所有的编码.
    -d, –debug 产生debug版本的可执行文件
    -w,–windowed,–noconsole 使用Windows子系统执行.当程序启动的时候不会打开命令行(只对Windows有效)
    -c,–nowindowed,–console
    使用控制台子系统执行(默认)(只对Windows有效)

  • 相关阅读:
    Android编译系统环境过程初始化分析【转】
    Android内核开发:理解和掌握repo工具【转】
    QQ空间如何设置被删除的好友不能访问空间
    用简单的C语言实现多任务轮流切换(模拟操作系统线程机制)【转】
    可重入函数与不可重入函数【转】
    关于链表中头指针和头结点的理解【转】
    C语言中static的使用方法【转】
    指针与地址的区别【转】
    柔性数组【转】
    void及void指针介绍【转】
  • 原文地址:https://www.cnblogs.com/eternalpal/p/14082095.html
Copyright © 2011-2022 走看看