如何使用pyintaller解决RecursionError?

时间:2018-08-16 04:51:41

标签: python-3.x pandas pyinstaller

我已经创建了有关编辑csv文件的代码(a.py),仅使用了一些for循环和while循环,pandas loc函数等。 但是此代码应加载一个csv文件才能运行。

当我尝试使用pyintaller将此a.py打包到exe时, 它说:

  

对于字段,iter_fields(节点)中的值:   RecursionError:超过最大递归深度。

我在Windows 10中,python:3.6 pyinstaller:3.4.dev0 + 7817d3fac 使用anaconda提示符并输入:pyinstaller 'path'/a.py -F . 是因为未引用csv文件吗?

2 个答案:

答案 0 :(得分:0)

考虑创建.spec文件并设置更高的递归限制。

通过运行以下步骤创建规格文件:

pyi-makespec -F a.py

然后编辑.spec文件以通过在顶部添加以下内容来设置递归限制:

# -*- mode: python -*-
import sys
sys.setrecursionlimit(9000)

最后,通过将规范文件传递到pyinstaller来构建EXE:

pyinstaller a.spec

答案 1 :(得分:0)

我已经通过安装PyQt5成功地完成了该过程,我确信它发现它存在'pyqt',但实际上尚未安装pyQt5。所以我点安装pyqt5并成功。