Python - Numpy install and import Issue
我已经使用
导入
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 | Traceback (most recent call last): File"<pyshell#65>", line 1, in <module> import numpy File"/Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/numpy/__init__.py", line 180, in <module> from . import add_newdocs File"/Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/numpy/add_newdocs.py", line 13, in <module> from numpy.lib import add_newdoc File"/Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/numpy/lib/__init__.py", line 8, in <module> from .type_check import * File"/Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/numpy/lib/type_check.py", line 11, in <module> import numpy.core.numeric as _nx File"/Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/numpy/core/__init__.py", line 14, in <module> from . import multiarray ImportError: dlopen(/Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/numpy/core/multiarray.so, 2): Symbol not found: _PyBuffer_Type Referenced from: /Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/numpy/core/multiarray.so Expected in: flat namespace in /Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/numpy/core/multiarray.so |
我假设该错误与multiarray.so文件有关。 我试过将其关闭然后再打开(卸载后重新安装),并添加where pip最初将模块保存到python导出路径
1 | (export PYTHONPATH="usr/local/lib/python2.7/site-packages") |
似乎不起作用。
在终端中使用
问题解决了。
我安装pip出现问题的原因归结为我在使用以下命令(感谢pv):
" pip安装moduleName"
而不是
" pip3.5安装moduleName"
这引起了各种复杂情况,因为我正在运行python 3.5,而" pip"命令适用于2.7。
再次感谢。
我遇到了同样的问题。
我尝试了很多方法,例如:
1 | $pip uninstall numpy |
但这并不能解决问题。
我认为一个主要原因是我拥有anaconda多Python环境(我创建了py27和py35)。结果,PYTHONPATH包含了py27和py35的路径。
我的默认python env是py35。所以使用
1 | $conda install numpy |
将在anaconda python3.5路径下安装numpy。
卸载numpy时,我们不确定要导出哪个numpy路径,也许仅适用于我的情况。
因此,我指的是@Dan Nhuyen的解决方案。
我通过以下方式卸载numpy:
1 | $brew uninstall numpy. |
结果,多余的歧义路径被删除。最后,它可以工作。
FWIW-以及将来搜寻该错误的人-通过Homebrew单独安装numpy时遇到了此问题。这导致我所有的Python安装(通过pyenv)都引用了numpy的
(我不记得为什么我要用自制软件安装numpy,但是哦)