Eclipse + PyDev 导入错误

1 投票
1 回答
4824 浏览
提问于 2025-04-16 21:02

我在使用PyDev和Eclipse时遇到问题,它无法识别已经安装的模块(比如gensim),而这些模块在IDLE中运行得很好。我使用的是Windows Vista,32位,Python 2.7。

我发现有类似的问题被提问过:在这里在这里在这里,还有在这里

推荐的解决办法是去偏好设置 > pydev > 解释器 - python,然后删除并重新添加(用自动配置)Python解释器。我已经这样做了,并且重启了Eclipse。在PYTHONPATH中,C:\Python27\lib\site-packages\gensim-0.8.0-py2.7.egg出现了,但我仍然遇到导入错误。我的代码是:

from gensim import corpora, models, similarities

这段代码的结果是:

Traceback (most recent call last):
  File "C:\Users\Jpan\Documents\workspace\FirstProject\src\gensim.py", line 1, in <module>
    from gensim import corpora, models, similarities
  File "C:\Users\Jpan\Documents\workspace\FirstProject\src\gensim.py", line 1, in <module>
    from gensim import corpora, models, similarities
ImportError: cannot import name corpora

另一个推荐的解决办法是手动添加文件夹,方法是在解释器 - python界面的底部点击“新建文件夹”,然后找到gensim安装的位置。我也这样做了,并添加了C:\Python27\lib\site-packages\gensim-0.8.0-py2.7.egg\gensim,这个文件夹里有所有必要的\__init__.py文件。但是,我仍然遇到ImportError

有没有其他建议我可以尝试的?

1 个回答

6

这个问题和Eclipse/PyDev没有关系。无论你用什么方式运行代码,都会遇到同样的错误。你的模块导入了gensim。在PYTHONPATH中,当前目录是第一个位置,而你的模块叫gensim.py,所以你的模块试图导入它自己。因为导入的内容会被缓存,所以不会陷入无限循环,但你得到的只是一个包含...空内容的模块,特别是没有你期待的“真正的”gensim模块中的东西。

错误信息应该提到这种可能性,这种情况非常常见。解决办法就是重命名你的文件。

撰写回答