美文网首页
PyQt5打包程序为exe可执行文件

PyQt5打包程序为exe可执行文件

作者: 漫步太空者 | 来源:发表于2019-03-03 21:24 被阅读0次

    首先在PyQt的目录里打开命令行

    第一步:输入打包命令: pyinstaller -Fw window.py      # window.py为程序的执行文件名

    -F: 表示生成单个可执行文件

    -w: 表示去掉控制台窗口

    -c: 表示启动控制台

    执行完这个命令之后,会生成window.spec这个文件

    如果程序执行时出现,"超过最大递归深度",这个时候,要去生成的window.spec中更改一些参数

    首先 导入sys这个模块

    import sys

    sys.setrecursionlimit(5000)

    a = AnaLysis(['window.py'],   # 要注意,执行的文件是py文件

                        excludes = ['urllib3'],  # 一般会自动调用这个库,如果没有调用,就要手动加上

                        noarchive = False)    # 表示启动程序默认关闭控制台

    第二步: 在Terminal终端输入命令: pyinstaller window.spec     # 这个时候就会生成exe可执行文件

    如果启动执行文件加载不出图片,将除了新生成的build,dist以外的所有的文件或引用文件,复制到dist文件夹中,打包结束.

    2019/3/28

    今天打包时又有了新发现,特在此补充

    之前打包一直会使用会加 -F 虽然是生成了单个exe可执行文件,看上去很清爽,但是这个命令它把所有的环境都整合在了一起,如果我们的程序比较大的话,启动时就会非常慢(如果你的电脑性能一般的话,加载时间会更长),因为它加载的数据都是静态加载的,需要去封装的包里一个个的去查找,所以速度变慢了. 所以,去掉 -F 之后,我们的启动速度流畅无比,体验效果也大大提升.去掉它之后,生成的dist文件中你程序中要用到的环境都会被放在dist中,这个时候所用到的环境就变成了动态加载的,速度就跟你用代码启动程序的速度是一样的.

    相关文章

      网友评论

          本文标题:PyQt5打包程序为exe可执行文件

          本文链接:https://www.haomeiwen.com/subject/fsnmuqtx.html