ModuleNotFoundError:没有名为“ scipy.special._ufuncs”的模块

时间:2018-11-12 03:05:09

标签: python python-3.x scipy

我已经在python3.6上安装了scipy:

sudo apt-get install python3-scipy
pip3 install scipy

但是,它不适用于此错误。

ModuleNotFoundError: No module named 'scipy.special._ufuncs'

我该怎么办?

非常感谢您的帮助。

2 个答案:

答案 0 :(得分:0)

通常,请勿使用sudo pip。 最好使用virtualenv,并将所有内容安装到其中。 您看到的迹象表明安装已损坏,最好从头开始重新安装---或激活virtualenv。

答案 1 :(得分:-1)

ufuncs(又名Universal Functions)是NumPy框架的一部分。使用SciPy时,必须先安装NumPy,因为它是一个依赖项。您可能会因为没有NumPy软件包而得到ModuleNotFoundError

在尝试任何操作之前,请列出当前安装的软件包:

pip3 list

如果未安装NumPy,请尝试安装它:

pip3 install numpy

编辑:

似乎您已尝试使用ubuntu软件包安装程序安装scipy。这就是为什么您的scipy版本为0.17的原因。有时某些ubuntu软件包可能已过时。因此,最好使用PyPI之类的官方软件包管理器(对于Python)。

首先卸载由程序包管理器安装的scipy:

sudo apt-get purge python3-scipy

成功卸载后,请使用PyPI重新安装它:

pip3 install scipy

这将从python软件包索引中安装最新版本(1.1.0)。

如果一切顺利,您应该可以运行代码而不会出现任何错误。