我试图阅读有关python错误的所有问题ImportError:没有名为I的模块重新安装了我需要使用的所有模块
sudo apt-get install build-essential python-dev python-setuptools python-numpy python-scipy libatlas-dev libatlas3gf-base
我也用pip升级了
sudo pip install --upgrade numpy
sudo pip install --upgrade scipy
当我运行qazxsw poi时,我得到了
matplotlib(1.3.1)
scipy(0.17.0)
numpy(1.11.0)
但这是执行结果:
pip list
我不知道发生了什么!请帮忙!!
操作系统ubuntu14.04
新编辑所以有些新闻:我检查了python的安装,我在不同的地方发现了不同的版本。在python2.7案例中,我有:
>>> import matplotlib
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
ImportError: No module named matplotlib
>>> import numpy
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "/usr/lib/python2.7/dist-packages/numpy/__init__.py", line 153, in <module>
from . import add_newdocs
File "/usr/lib/python2.7/dist-packages/numpy/add_newdocs.py", line 13, in <module>
from numpy.lib import add_newdoc
File "/usr/lib/python2.7/dist-packages/numpy/lib/__init__.py", line 8, in <module>
from .type_check import *
File "/usr/lib/python2.7/dist-packages/numpy/lib/type_check.py", line 11, in <module>
import numpy.core.numeric as _nx
File "/usr/lib/python2.7/dist-packages/numpy/core/__init__.py", line 6, in <module>
from . import multiarray
ImportError: /usr/lib/python2.7/dist-packages/numpy/core/multiarray.so: undefined symbol: PyUnicodeUCS4_AsUnicodeEscapeString
在使用/usr/bin/python2.7
/usr/local/bin/pyton2.7
时,我得到了
which
但which python
/usr/local/bin/python
工作得很好
/usr/bin/python2.7
谢谢
当包具有C扩展并且它们被编译为不适合您尝试运行它的Python版本的解释器时会发生这种情况。
(假设您在Linux / OS X上运行)您可以尝试使用virtualenv为您正在运行的当前Python版本安装软件包:
cd /usr/bin
./python2.7
Python 2.7.6 (default, Jun 22 2015, 17:58:13)
[GCC 4.8.2] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import scipy
>>> import numpy
>>> import matplotlib
>>>
或者,您可以直接提供安装numpy的Python版本的显式路径。
请注意,pip install virtualenv
virtualenv my_env
source my_env/bin/activate
pip install numpy
是无法加载的C扩展,表示问题。
另请参阅/usr/lib/python2.7/dist-packages/numpy/core/multiarray.so
,了解如何根据需要编译Python。