Python ImportError:没有名为scipy.sparse的模块

Python ImportError:没有名为scipy.sparse的模块,python,python-3.x,scipy,importerror,Python,Python 3.x,Scipy,Importerror,我使用以下命令在Ubuntu上安装了Scipy: sudo apt-get install python-scipy pip install scipy 但当运行导入时,我得到以下错误: ImportError:没有名为scipy.sparse的模块 我搜索并尝试了以下操作,然后重新安装了Scipy: sudo-apt-get-purge-python-scipy 但还是犯了同样的错误 更新:我没有在python文件中导入scipy,只是导入了keras 以下是错误消息: (我的环境)…$

我使用以下命令在Ubuntu上安装了Scipy:

sudo apt-get install python-scipy
pip install scipy
但当运行导入时,我得到以下错误:

ImportError:没有名为scipy.sparse的模块
我搜索并尝试了以下操作,然后重新安装了Scipy:

sudo-apt-get-purge-python-scipy
但还是犯了同样的错误

更新:我没有在python文件中导入scipy,只是导入了keras

以下是错误消息:

(我的环境)…$python test.py
使用TensorFlow后端。
回溯(最近一次呼叫最后一次):
文件“test.py”,第10行,在
进口干酪
文件“/home/。/my_env/lib/python3.5/site packages/keras/_init__.py”,第3行,在
从…起导入UTIL
文件“/home/./my_env/lib/python3.5/site packages/keras/utils/_init__.py”,第27行,在
从.multi\u gpu utils导入multi\u gpu\u模型
文件“/home/。/my_env/lib/python3.5/site packages/keras/utils/multi_gpu_utils.py”,第7行,在
from..layers.merge导入连接
文件“/home/。/my_env/lib/python3.5/site packages/keras/layers/\uuuuu init\uuuuu.py”,第4行,在
从..engine.base\u层导入层
文件“/home/。/my_env/lib/python3.5/site packages/keras/engine/\uuuuu init\uuuuu.py”,第8行,在
从.培训导入模型
文件“/home/。/my_env/lib/python3.5/site packages/keras/engine/training.py”,第21行,在
从…起导入培训单元阵列
文件“/home/。/my_env/lib/python3.5/site packages/keras/engine/training_arrays.py”,第8行,在
从scipy.sparse导入
ImportError:没有名为“scipy.sparse”的模块

改用pip安装,运行:

pip install scipy
这对我很有帮助,希望能有帮助

编辑:忘记您正在使用python 3.x,请运行以下命令:

pip3 install scipy

您使用的是Python 3,但使用pip安装的是用于Python 2的scipy。
使用:

或:

试一试

以及安装pip3

sudo python3 get-pip.py

只是为了确保安装了哪个Python版本的Scipy,请在终端中尝试:

which Python
然后尝试:

pip freeze 
获取所有已安装软件包的列表


也许您有多个python版本,并且已经将包安装到其中一个版本,并尝试使用另一个版本执行您的代码。

在Ubuntu 18.04及更高版本中,您可以使用
sudo apt install python3 Scipy python3 Keras安装Scipy和Keras for python 3,这样您就可以开始了,但是,您使用的是Ubuntu 16.04,并且安装了与TensorFlow for Python 3.4、3.5和3.6不兼容的Python 2的Scipy,因此请使用以下命令安装Python 3的默认Scipy软件包:

sudo apt install python3-scipy  
有关在Ubuntu中安装TensorFlow的更多说明,请阅读。这本书值得一读,因为从现在开始使用TensorFlow时,您必须检查包版本的兼容性

如果命令的目的是升级scipy,那么命令pip install scipy
也不正确。升级Scipy的正确命令应该是
pip install--upgrade--user Scipy
,即使如此,它也没有用,因为当前安装的Scipy仅用于Python 2,而TensorFlow用于Python 3。

Scipy路径混淆。 卸载

pip uninstall scipy
安装使用康达为我工作

conda install scipy
在Ubuntu/Debian上:

sudo apt-get install python3-scipy

请注意
python
中的
3
,它对我很有用。

您需要libatlas base dev gfortransaw告诉我们您的导入行、完整的错误回溯和您的项目文件结构。@BalázsNagyillés现在也试过了error@KlausD. 问题是更新了,我们确实更喜欢文本而不是屏幕截图,所以我认为你的Scipy安装出错了。这次尝试卸载并安装控制盘文件:执行哪个python时没有显示任何内容。。但是使用python版本。。pythn3.5.2和from pip freeze scipy==1.2.1是否显示您是否尝试通过控制盘文件安装它?我还建议尝试安装Anaconda发行版。这将节省大量安装软件包和此类问题的时间。您还可以使用
conda安装-c conda forge scipy
pip安装--升级--用户scipy
解决我的问题,谢谢。
pip uninstall scipy
conda install scipy
sudo apt-get install python3-scipy