我是Macintosh Yosemite用户。当我尝试导入matplotlib时,我收到以下错误。
import matplotlib
Traceback (most recent call last):
File "<pyshell#11>", line 1, in <module>
import matplotlib
File "/Library/Frameworks/Python.framework/Versions/3.4/lib/python3.4/site-packages/matplotlib/__init__.py", line 180, in <module>
from matplotlib.cbook import is_string_like
File "/Library/Frameworks/Python.framework/Versions/3.4/lib/python3.4/site-packages/matplotlib/cbook.py", line 33, in <module>
import numpy as np
File "/Library/Frameworks/Python.framework/Versions/3.4/lib/python3.4/site-packages/numpy/__init__.py", line 170, in <module>
from . import add_newdocs
File "/Library/Frameworks/Python.framework/Versions/3.4/lib/python3.4/site-packages/numpy/add_newdocs.py", line 13, in <module>
from numpy.lib import add_newdoc
File "/Library/Frameworks/Python.framework/Versions/3.4/lib/python3.4/site-packages/numpy/lib/__init__.py", line 8, in <module>
from .type_check import *
File "/Library/Frameworks/Python.framework/Versions/3.4/lib/python3.4/site-packages/numpy/lib/type_check.py", line 11, in <module>
import numpy.core.numeric as _nx
File "/Library/Frameworks/Python.framework/Versions/3.4/lib/python3.4/site-packages/numpy/core/__init__.py", line 6, in <module>
from . import multiarray
ImportError: cannot import name 'multiarray'
当我使用可以正常工作的from pylab import axis
时。我不知道发生了什么,我只是迷失了。我尝试过使用自制软件,macports安装,dmg安装。我也很少通过终端安装东西的经验,所以我只关注其他人说的话。虽然,这仍然无效。
答案 0 :(得分:2)
默认情况下,Mac OS X附带python。还有一个由自制软件提供。我建议在默认的python上使用自制的python 。
在这里,我怀疑您的numpy
安装已经进入由非自制软件包管理器管理的site-packages目录,而matplotlib软件包安装在不同的 site-packages 中目录。 (但我不确定)。然而,它与使用的多个python /包管理器有关。这可能不是最好的答案,但到目前为止,我能想到解决问题的唯一解决方案是卸载pip并删除你可以在文件系统上找到的任何python site-packages
目录中的所有内容。再次通过homebrew安装python,然后使用pip安装所需的所有软件包(使用自制软件安装python时会自动安装)
警告:请确保列出包名并在删除之前将其存储在某处,因为您必须重新安装它们。
brew uninstall python
#(ATTN) Uninstall macports and don't use it with brew
#(ATTN) Delete the contents of all python site-packages directories
rm /usr/local/lib/python2.7/site-packages/*
brew install python
# Homebrew comes with its own pip installed
pip install <package1>, <package2> ...
以下是遇到类似问题的人的相关问题: Numpy build fails with cannot import multiarray
我的建议:不要将Homebrew
和Macports
或任何其他包管理器一起使用。他们互相搞砸了,我已经面对过去的后果。我现在只使用homebrew
python。对于安装科学python包,Anaconda或Canopy(选择一个)非常有用,可以安装在自制的python之上。
答案 1 :(得分:1)
在遇到类似于你描述的问题之后,使用 sudo pip install -U matplotlib 对我来说很好。