10

每当我从 numpy 导入模块时,我在 Linux Mint Maya (Cinnamon) 上的 Eclipse 3.7.2 PyDev 2.7.1 中出现“导入中的未定义变量”错误。只有在导入 numpy 时才会出现问题;其他模块工作得很好。

信息:numpy 是针对英特尔 MKL 库编译的。Python 2.7.3 [GCC 4.6.3]

例子:

import numpy as np

a = np.array([1, 2])

PyDev 编辑器中的错误消息:“来自导入的未定义变量:数组”

对于其他 numpy 子模块,我遇到了类似的错误。

代码可以在 Eclipse 或终端中正常运行。该问题仅存在于 Eclipse-PyDev 编辑器中。

4

5 回答 5

3

LD_LIBRARY_PATH必须包含 MKL 库的路径。即使LD_LIBRARY_PATH设置正确,也必须在 Eclipse 中的 Window > Preferences > Interpreter - Python 下,在右侧的“Environment”选项卡下明确指定。添加一个名为“LD_LIBRARY_PATH”的新变量并粘贴$LD_LIBRARY_PATH.

完成后,只有在使用 numpy 对象的代码中添加一行以便再次检查导入时,错误才会从代码中消失。

于 2012-12-29T13:47:20.917 回答
2

我设法通过更新 Eclipse 中的 Phyton 解释器来修复它。成功安装 Numpy 模块后,只需单击应用按钮。

于 2016-11-02T08:27:19.723 回答
1

MKL 库和 numpy 是一回事吗?@user1898039 的回答对我来说没有意义(我不确定我应该为该属性使用什么路径。

我找到了解决此问题的另一种方法 - 我通过调用检查了 python 命令行以查看是否安装了 numpy:

>>> import from numpy *

不是。因此,尽管 numpy 出现在 Python Interpreter 属性的“强制内置”选项卡下的 PyDev 中,但 Python 无法从命令行使用它,我想这会导致 PyDev 内部出现问题。

因此,我通过访问 numpy 站点并安装 Windows 的最新版本来解决问题。从技术上讲,我去了一些其他有 AMD64 版本的 Windows 安装程序的网站,买你知道,同样的。之后,我尝试获取 PYTHONPATH 变量来重新计算所有库(这可能是不必要的),但在所有对 array() 的调用的文件中仍然显示错误。我对 numpy 包进行了自动完成以获取函数列表,从该列表中选择 array(),突然间所有错误都清除了,现在一切都很好。

于 2014-08-03T19:24:12.860 回答
0

我可以通过将以下路径添加到 PYTHONPATH 来解决这个问题(Pydev => Python Interpreters => select an Interpreter => Libraries):

/usr/local/anaconda/lib/python2.7/lib/lib-dynload

已安装的软件包(除其他外):

conda==3.10.1
numpy==1.9.2
scipy==0.15.1
于 2015-05-11T16:19:40.943 回答
0

在重新启动 Eclipse 后,我偶尔会看到 pandas 对象的这些错误,即使我的文件顶部当然有“import pandas as pd”。

我发现了一个简单的解决方法:我只需删除导入语句,保存文件,将其粘贴回并重新保存。错误消失!

我在这个版本的 Eclipse 上:

面向 PHP 开发人员的 Eclipse

版本:Mars.2 版本 (4.5.2) 内部版本号:20160218-0600

于 2021-02-10T17:35:15.133 回答