如何将NumPy作为模块导入Eclipse(PyDev)

时间:2015-05-18 19:50:24

标签: python eclipse numpy import

我试图在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才能使其正常工作?

2 个答案:

答案 0 :(得分:1)

问题是你有一个Python 3.4安装,你在PyDev中使用,以及你在终端中使用的Python 3.5安装。每个人都有自己独立的站点包。因此,当您通过使用Python 3.5运行其setup.py来安装NumPy时,它已安装到3.5个站点包中,但是当您在PyDev中查找它时,它不在3.4站点包中。

您可以在所提供的输出中看到版本号3.5。但是,如果你想绝对确定,你可以从PyDev里面和终端上print(sys.version)

无论如何,解决方案是执行以下任何操作:

  1. 也安装NumPy for 3.4。您可以通过运行python3.4 setup.py install来执行此操作(与您使用{3.5}相同但使用python3.4而不是python3)。但是,如果pip3.4 install numpy有效,通常会更好。
  2. 将PyDev配置为使用3.5而不是3.4。
  3. 卸载3.4或3.5。你仍然必须做上述其中一项,但这将使错误成为可能,并减少你将来再次遭遇同样困惑的可能性。
  4. 如果你想知道为什么这没有帮助:

      

    ...并添加了NumPy位置/Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/site-packages/numpy

    问题是您添加了site-packages/numpy而不是site-packagesnumpy包中没有名为numpy的包。

    但是,您不希望通过将3.5站点包添加到3.4搜索路径来解决问题。许多软件包,尤其是那些需要编译的C代码(如numpy的软件包),不适用于与安装它们不同的Python版本。

答案 1 :(得分:0)

检查Eclipse是否使用了正确的Python解释器,

import sys
print(sys.version)

在计划开始时。如果它返回的内容超出了您的预期,那么您可能会将其安装到错误的Python版本中。