python利用PyQt5和QTDesginer开发GUI应用(三)、使用pyinstaller打包成exe文件_王义凯_Rick的博客-程序员秘密

技术标签: pyinstaller  python  exe  PyQt5  Python全栈开发  GUI  

python应用GUI开发系列:

python利用PyQt5和QTDesginer开发GUI应用(一)、环境准备及demo

python利用PyQt5和QTDesginer开发GUI应用(二)、股票查询工具

-------------------------------------------------------------------------------------------------------------------
使用pyinstaller这个工具即可。

安装:pip install pyinstaller

在terminal中输入

pyinstaller -F [-c] [-w] fund_search_show_ui.py

即可打包成exe文件。   -c是返回错误信息 -F打包文件   -w 在执行exe时隐藏cmd窗口

执行打包命令的时候会生成.spec文件,然后pyinstaller会根据spec文件进行打包。

打包的时候有可能会遇到一个错误:

RecursionError  maximum recursion depth exceeded,UnicodeDecodeError

这是超过了最大递归深度,python默认的递归深度默认是1000。

解决:

修改.spec文件,在最前面加上:

import sys
sys.setrecursionlimit(100000)

必须在.spec文件上加,在.py文件里加是没有用的。

然后编译的时候改成从.spec文件编译:

pyinstaller -F [-c] [-w] fund_search_show_ui.spec

编译成功后,exe文件会生成在当前目录下的dist目录下:

但此时生成的文件较大,有364M

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/wsdc0521/article/details/105865389

智能推荐

Scala深入浅出实战经典:35,List的map、flatMap、foreach、filter操作代码实战_AirToSupply的博客-程序员秘密

Scala深入浅出实战经典:35,List的map、flatMap、foreach、filter操作代码实战

RxJava中线程调度用法,指定在主/子线程中执行_MagicGGGGGGGGGGG的博客-程序员秘密

终于到了这个时刻,Android中的定律,主线程不做耗时操作,子线程不更新ui。这次也是根据给初学者的RxJava2.0教程(二)进入下面的学习。直接上代码 private TextView mTextView; public RxJavaThread(TextView textView) { mTextView = textView; } ...

抖音最后一面,问我Java 是如何实现线程间通信的?_独行侠梦的博客-程序员秘密

线程之间到底使用什么沟通的呢?如何把数值变化传递给其他子线程?来源:blog.csdn.net/lanxian837820149/article/details/101479004Mark...

优秀的博客和网页_邪恶的亡灵的博客-程序员秘密

搜集了很多人脸识别领域的大牛和研究组 http://cvchina.net/post/96.html

Javascript数据校验 数字和数字、字母_js判断v+数字_孜然不辣的博客-程序员秘密

校验数据 只允许数字(手机号验证) var reg = /^[0-9]+.?[0-9]*/; //判断字符串是否为数字//判断正整数/[1−9]+[0−9]∗]∗/ if (!reg.test(testData1)) { this.$alert("手机号请输入数字!") return }else { if(testData1.toString().length>11){ this.$alert("手机号输入长度不能超过11位!") return }

Markdown常用操作(空格、换行、缩进、转义等操作)_markdown 空格转义_输微的博客-程序员秘密

空格、换行缩进输出空格1)微软输入法需只能通过快捷键完成切换,且需在设置设置好快捷键为shift+空格在输入法中英文标识上 右键即可进入设置页面2)记的将全角切换回半角,否则在word文档和markdown出现输入英文字母间隔大的问题换行与缩进MarkDown首行缩进和换行特殊字符Markdown的转义字符为 “\”常用需要使用转义字符的有\`*_{}[]()...

随便推点

整数快速幂 & 快速幂取模_整数幂模_一只不出息的程序员的博客-程序员秘密

整数快速幂 & 快速幂取模快速幂a^b^的朴素算法快速幂的原理快速幂【代码】快速幂取模幂取模的朴素的实现快速幂取模原理快速幂取模【代码】矩阵快速幂矩阵快速幂【代码】例题P1226 【模板】快速幂||取余运算P3390 【模板】矩阵快速幂快速幂所谓的快速幂,其目的是为了快速求幂,将时间复杂度从O(n)朴素算法的降到O(logn)。假如现在要求ab,按照朴素算法,就是将a连乘b次,时间复杂度为O(b),即O(n)级别。ab的朴素算法// O(n)#include<cstdio>

【Linux入门】CentOS7的命令行初步了解(登录等基础命令操作)_mmciel的博客-程序员秘密

登录Linux打开虚拟机,启动安装好的centos首先会见到这个默认等待窗口CentOS Linux7(Core)Kernel 3.10.0-957.eI7。x86_64 on an x86_64localhost login:这时需要输入用户密码,无特殊需要使用安装时设定的账户密码即可。注意:密码的输入过程是没有符号显示的。登录成功,如图所示最后一次登录的时间是。。。登...

java异常、自定义异常、 常用类、枚举类、_银行常用异常枚举_满屏都是小广告的博客-程序员秘密

异常:程序生病了ThrowableError Exception| | UncheckExceptionError:错误:一般是由虚拟机生成并脱出的,程序员无法解决Exception: 异常CheckException 检查时异常|编译时异常: 编译时期就会出现的异常如果出现了编译时异常不处理,程序无法运行RuntimeException 运行时异常 : 运...

利用DISM命令修复Windows聚焦自动更新失效和“喜欢吗”按钮消失的问题_win10聚焦喜欢吗不见了_慎终君的博客-程序员秘密

一开始Windows聚焦无法自动更新了,网上解决方法一大堆,一通操作以后,别说自动更新了,把“喜欢吗”按钮都弄没了,手动更新都失效了。按照微软论坛的解决方法,成功修复这个问题。Windows聚焦的自动更新和“喜欢吗”按钮都恢复了,过程如下:Win + x,点击Windows Power Shell(管理员),复制粘贴以下命令:Dism /Online /Cleanup-Image /Scan...

shell编写自动化发布脚本_shell自动脚本_玩名堂_的博客-程序员秘密

##在此之前先把项目从网上克隆下来,比如从码云上clone到git-repository/HAHAecho "*********************进入git项目HAHA目录*******************************"cd /developer/git-repository/HAHAecho "*********************g

推荐文章

热门文章

相关标签