python在导入nupmy和matplotlib时遇到问题

>>>import matplotlib
Traceback (most recent call last):
File "<pyshell#5>", line 1, in <module>
import matplotlib
File "C:\Python34\lib\site-packages\matplotlib\__init__.py", line 180, in <module>
from matplotlib.cbook import is_string_like
File "C:\Python34\lib\site-packages\matplotlib\cbook.py", line 33, in <module>
import numpy as np
File "C:\Python34\lib\site-packages\numpy\__init__.py", line 170, in <module>
from . import add_newdocs
File "C:\Python34\lib\site-packages\numpy\add_newdocs.py", line 13, in <module>
from numpy.lib import add_newdoc
File "C:\Python34\lib\site-packages\numpy\lib\__init__.py", line 8, in <module>
from .type_check import *
File "C:\Python34\lib\site-packages\numpy\lib\type_check.py", line 11, in <module>
import numpy.core.numeric as _nx
File "C:\Python34\lib\site-packages\numpy\core\__init__.py", line 6, in <module>
from . import multiarray
ImportError: cannot import name 'multiarray'
>>> import numpy
Traceback (most recent call last):
File "<pyshell#6>", line 1, in <module>
import numpy
File "C:\Python34\lib\site-packages\numpy\__init__.py", line 170, in <module>
from . import add_newdocs
File "C:\Python34\lib\site-packages\numpy\add_newdocs.py", line 13, in <module>
from numpy.lib import add_newdoc
File "C:\Python34\lib\site-packages\numpy\lib\__init__.py", line 8, in <module>
from .type_check import *
File "C:\Python34\lib\site-packages\numpy\lib\type_check.py", line 11, in <module>
import numpy.core.numeric as _nx
File "C:\Python34\lib\site-packages\numpy\core\__init__.py", line 6, in <module>
from . import multiarray
ImportError: cannot import name 'multiarray'
我用的64位系统 装的32位python 3.4

1.最开始,在装完nltk,numpy和scipy以及matplotlib后,我直接在python交互式命令行中导入matplotlib模块,结果提示缺少模块six,如下图所示:

这个模块实在刚才装完的SciPy包中,找到自己的Python的安装目录,然后把%PYTHON_ROOT%\Lib\site-packages\scipy\lib目下的six.py,six.pyc,six.pyo三个文件放到%PYTHON_ROOT%\Lib\site-packages目录下即可解决这个问题,这里%PYTHON_ROOT%是指你电脑上的python安装的根目录,如我是把python安装在C盘根目录的,所以在我电脑上这个%PYTHON_ROOT%表示的是C:\python27,这个根据你自己安装Python的目录不同而不同。

2.在解决上面的问题后,再次在python交互式命令行下,导入matplotlib模块,结果仍然提示出错,如下图:

根据提示可以知道,matplotlib需要dateutil,所以我们需要安装第6步中的dateutil,在我给的链接里,如今只能下到.whl格式的安装文件,这个是python自己的包文件需要用到python的包管理软件来安装,python自带的包管理软件常见的有setuptools和pip两种,我这里使用的是pip来进行安装。使用之前最好自己添加环境变量,免得在后面使用时,要输入Pip程序的完整路劲比较麻烦。在系统变量Path的最后面添加如下的地址:%PYTHON_ROOT%\Scripts。其中,%PYTHON_ROOT%仍然是python的根目录。安装过程如下:将下载好的dateutil的安装包,放到某个目录下,如我把它放在D盘根目录,然后打开windows的命令行窗口,请注意是Windows的命令行窗口,然后进入D盘根目录,然后输入如下命令,如下图下半部分所示:

3.安装完dateutil后,导入matplotlib仍然提示有错,提示缺少pyparsing模块,按照第二步方式,下载安装文件,安装完成后,便可正确导入matplotlib模块,安装的命令如上图上半部分所示,这里不再赘述。正确安装后即可成功导入,如下图所示:

安装的正确过程:

1.先安装python,我用的是32位python3.4.1(下载地址可以去:http://www.nltk.org,当然也可以去官网,但nltk官网上给出了相应版本的nltk所需要的python版本)

2.安装nltk(版本nltk-3.0.1.win32),这是python下的一个自然语言工具,里面集成了很多处理自然语言所需要的函数。(下载地址:同上)

3.安装NumPy(版本numpy-1.8.1-win32-superpack-python3.4)(下载地址:http://www.scipy.org/scipylib/download.html

4.安装SciPy(版本scipy-0.15.1-win32-superpack-python3.4)(下载地址:同上)

5.安装Matplotlib(版本matplotlib-1.4.1.win32-py3.4)(下载地址:http://matplotlib.org/

6.安装dateutil(版本python_dateutil-2.3-py2.py3-none-any)(下载地址:http://www.lfd.uci.edu/~gohlke/pythonlibs/

7.安装Pyparsing(版本pyparsing-2.0.3-py3-none-any)(下载地址:同上)

其中,NumPy和SciPy中的一些模块,是导入Matplotlib所需的,应该安装。

温馨提示:答案为网友推荐,仅供参考
第1个回答  2015-05-10
建议重新安装 python3-matplotlib, python3-numpy 和别的你需要的包,python-matplotlib, python-numpy 这种包是给python2.7 使用的.本回答被提问者和网友采纳
第2个回答  2015-05-09
64位的装32位的Python解释器兼容吗追问

可以用-。。

追答

提示不能引入multiarray