将py文件打包成exe文件(包含遇见的问题以及解决办法)
将py文件打包成exe文件(包含遇见的问题以及解决办法)
首先是利用pip安装工具库pyinstaller,即Win+R后输入cmd进入控制台:
然后输入:pip install pyinstaller 如下:
当最后显示successfully的时候,就可以进行下一步,输入:pyinstaller -F E:\deploy.py(黄色部分为自己要打包的py文件的存储地址)
执行这一步的时候如果最终没有报错当然更好,就可以在执行过程中看见生成exe的位置,但是自己在运行过程中遇见了两个错误,列举如下:
1.RecursionError: maximum recursion depth exceeded
原因: ast模块默认深度为1000,而其自身调用太多次递归,超出了python默认递归的深度;
解决办法: 手动改变递归深度,如下:
在上面的运行过程中,虽然报错,但是在过程中会产生一个spec文件,在代码执行过程最开始就可以看见位置(忘记截图了555),我是在这:
然后就用记事本打开这个.spec文件并在第二行加入这两句话改变深度:
import sys
sys.setrecursionlimit(100000)
最后回到控制台输入以下内容即可(注意pyinstaller后面跟的是自己的地址):
pyinstaller C:\Users\LENOVO\deploy.spec
这样运行就没有报越过深度的错了,但出现了下面这个错误:
2.UnicodeDecodeError: ‘utf-8’ codec can’t decode byte 0xce in position 109: invalid continuat
深度的错误已经没有了,开始报编码的错误,如上。这时一方面检查执行的文件里面是否有中文,另一方面,将控制台的编码格式设置为utf-8,方法如下:
首先在控制台输入 chcp 65001,会进入一个新的控制台:
然后再执行前面的语句即可:
在执行结果的最后能够看见exe文件存储的位置(红色方框中内容):
在其指向的位置能够看见exe文件,点击即可运行:
上一篇: 使用Git多人协作开发时分支合并流程
下一篇: 如何使用金山毒霸照片恢复功能