我制作了一个 Dash Web 应用程序,使用 PyInstaller 创建了一个 .exe。该应用程序加载没有问题,但在调用函数时它突然停止。问题似乎在于未安装 numexpr 库(熊猫检查 _NUMEXPR_INSTALLED 失败),即使通过在 python 中运行脚本不会产生任何问题。
我正在使用 pandas 1.0.1、PyInstaller 3.6 和 Python 3.7.7 我已经尝试过以下操作:
由于 PyInstaller 的问题,将 pandas 从 1.0.5 降级到 1.0.1
将 pandas 路径添加到 PyInstaller .spec 文件
def get_numpy_path(): import numpy numpy_path = numpy.__path__[0] return numpy_path dict_tree = Tree(get_pandas_path(), prefix='pandas', excludes=["*.pyc"]) a.datas += dict_tree a.binaries = filter(lambda x: 'pandas' not in x[0], a.binaries) ...
我安装了 numexpr,但版本是 2.7.1,并且在 pandas.compat_optional 中定义了 2.6.2 版本,因此它也引起了一些问题并且没有工作。pip 不允许我安装任何版本的 numexpr
任何想法如何克服这个问题来拥有一个功能性的.exe?PS:该应用程序还使用 numpy、scypi 和 sklearn。