如何将 NumPy 作为模块导入 Eclipse (PyDev)
How to import NumPy as a module into Eclipse (PyDev)
我正在尝试在 Eclipse 中使用 NumPy,我在其中使用 Python 3.4 和 PyDev。我已经安装了 NumPy 版本 1.9.2(带有 setup.py)并且它在 IDLE
中工作正常
>>>import numpy as np
>>>a = np.array([0,1,2,3])
>>>print(a)
[0 1 2 3]
但是当我在 Eclipse 中做同样的事情时,我得到一个错误 No Module named 'numpy'
我已经转到首选项 > PyDev > 解释器 > Python 解释器 > 库
并添加了 NumPy 位置 /Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/site-packages/numpy
并重新启动了我的机器。
我不知道接下来要尝试什么,我是否需要删除并重新配置所有 PyDev 才能使其正常工作?
检查 Eclipse 是否使用正确的 Python 解释器,
import sys
print(sys.version)
在程序开始时。如果它 returns 与您预期的不同,您可能安装了错误的 Python 版本。
问题是您在 PyDev 中使用了 Python 3.4 安装,在终端中使用了 Python 3.5 安装。每个都有自己独立的站点包。所以,当你通过 运行 它的 setup.py 和 Python 3.5 安装 NumPy 时,它被安装到 3.5 站点包中,但是当你在 PyDev 中寻找它时,它不是' t 在 3.4 站点包中。
您可以在您提供的输出中看到版本号 3.5。但是,如果您想绝对确定,可以从 PyDev 内部和终端上 print(sys.version)
。
无论如何,解决方案是执行以下任一操作:
- 同时为 3.4 安装 NumPy。您可以通过 运行
python3.4 setup.py install
来完成此操作(与您对 3.5 所做的相同,但使用 python3.4
而不是 python3
)。但是,如果 pip3.4 install numpy
有效,这通常会更好。
- 将 PyDev 配置为使用 3.5 而不是 3.4。
- 卸载 3.4 或 3.5。您仍然必须执行上述操作之一,但这将不会出错,并减少您将来再次陷入类似困惑的机会。
如果您想知道为什么这没有帮助:
... and added the NumPy location /Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/site-packages/numpy
问题是您添加了 site-packages/numpy
而不是 site-packages
。 numpy
包中没有名为 numpy
的包。
但是,您不想通过将 3.5 站点包添加到 3.4 搜索路径来解决问题;许多软件包,尤其是那些需要像 numpy
这样的编译 C 代码的软件包,将无法使用与它们安装的版本不同的 Python 版本。
我正在尝试在 Eclipse 中使用 NumPy,我在其中使用 Python 3.4 和 PyDev。我已经安装了 NumPy 版本 1.9.2(带有 setup.py)并且它在 IDLE
中工作正常>>>import numpy as np
>>>a = np.array([0,1,2,3])
>>>print(a)
[0 1 2 3]
但是当我在 Eclipse 中做同样的事情时,我得到一个错误 No Module named 'numpy'
我已经转到首选项 > PyDev > 解释器 > Python 解释器 > 库
并添加了 NumPy 位置 /Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/site-packages/numpy
并重新启动了我的机器。
我不知道接下来要尝试什么,我是否需要删除并重新配置所有 PyDev 才能使其正常工作?
检查 Eclipse 是否使用正确的 Python 解释器,
import sys
print(sys.version)
在程序开始时。如果它 returns 与您预期的不同,您可能安装了错误的 Python 版本。
问题是您在 PyDev 中使用了 Python 3.4 安装,在终端中使用了 Python 3.5 安装。每个都有自己独立的站点包。所以,当你通过 运行 它的 setup.py 和 Python 3.5 安装 NumPy 时,它被安装到 3.5 站点包中,但是当你在 PyDev 中寻找它时,它不是' t 在 3.4 站点包中。
您可以在您提供的输出中看到版本号 3.5。但是,如果您想绝对确定,可以从 PyDev 内部和终端上 print(sys.version)
。
无论如何,解决方案是执行以下任一操作:
- 同时为 3.4 安装 NumPy。您可以通过 运行
python3.4 setup.py install
来完成此操作(与您对 3.5 所做的相同,但使用python3.4
而不是python3
)。但是,如果pip3.4 install numpy
有效,这通常会更好。 - 将 PyDev 配置为使用 3.5 而不是 3.4。
- 卸载 3.4 或 3.5。您仍然必须执行上述操作之一,但这将不会出错,并减少您将来再次陷入类似困惑的机会。
如果您想知道为什么这没有帮助:
... and added the NumPy location /Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/site-packages/numpy
问题是您添加了 site-packages/numpy
而不是 site-packages
。 numpy
包中没有名为 numpy
的包。
但是,您不想通过将 3.5 站点包添加到 3.4 搜索路径来解决问题;许多软件包,尤其是那些需要像 numpy
这样的编译 C 代码的软件包,将无法使用与它们安装的版本不同的 Python 版本。