“在一个Eclipse工作区中导入numpy时出现错误,而在另一个工作区中却没有”
每次我在新安装的Eclipse和Pydev中尝试导入numpy时,都会遇到以下错误:
Traceback (most recent call last):
File "Q:\temp\test.py", line 1, in <module>
import numpy
File "C:\Python26\lib\site-packages\numpy\__init__.py", line 132, in <module>
import add_newdocs
File "C:\Python26\lib\site-packages\numpy\add_newdocs.py", line 9, in <module>
from lib import add_newdoc
File "C:\Python26\lib\site-packages\numpy\lib\__init__.py", line 4, in <module>
from type_check import *
File "C:\Python26\lib\site-packages\numpy\lib\type_check.py", line 8, in <module>
import numpy.core.numeric as _nx
File "C:\Python26\lib\site-packages\numpy\core\__init__.py", line 13, in <module>
import defchararray as char
File "C:\Python26\lib\site-packages\numpy\core\defchararray.py", line 23, in <module>
from numpy.core.multiarray import _vec_string
ImportError: cannot import name _vec_string
不过,在普通的Python控制台和IPython中,导入是成功的。
Python 2.6.5 (r265:79096, Mar 19 2010, 21:48:26) [MSC v.1500 32 bit (Intel)] on win32
Type "help", "copyright", "credits" or "license" for more information.
>>> import numpy
>>>
Q:\Groups\Bioinformatics\HPLCautomatization\autohplc>ipython
Python 2.6.5 (r265:79096, Mar 19 2010, 21:48:26) [MSC v.1500 32 bit (Intel)]
Type "copyright", "credits" or "license" for more information.
IPython 0.10 -- An enhanced Interactive Python.
? -> Introduction and overview of IPython's features.
%quickref -> Quick reference.
help -> Python's own help system.
object? -> Details about 'object'. ?object also works, ?? prints more.
In [2]: import numpy
更复杂的是,在另一个Eclipse工作区,这个导入是正常的。重启Eclipse也没有帮助。我还尝试在“首选项->Python->解释器->Python”中重新配置解释器(就像这个问题提到的那样),但问题依然存在。
在Stack Overflow上还有两个类似的问题(这个和这个),但它们都是在IronPython中出现的,我在提供的少数答案中找不到任何可以用的解决办法。
编辑 根据dutt的建议,我检查了两个测试工作区(一个正常,一个不正常)中的“首选项->Pydev->解释器Python->库”。出现问题的工作区包含了以下库:C:\Python26\lib\site-packages\numpy-1.5.0-py2.6-win32.egg。而正常的工作区在其系统库列表中没有列出任何numpy库。我已经从不正常的工作区中移除了上述库。
2 个回答
2
检查一下你安装的Python和NumPy的版本,它们应该是相同的。之前我也遇到过这个问题,最后我通过重新安装Python和NumPy来解决的,虽然我的电脑是64位的,但我安装的是win32版本。
3
(假设你在用PyDev)去设置里找一下,路径是:偏好设置 -> Pydev -> 解释器 -> Python -> 库,你可能需要在这里添加NumPy。它应该在你的python/lib/site-packages文件夹里。