如何处理Eclipse中的未解析导入(Python)

11 投票
8 回答
16444 浏览
提问于 2025-04-15 20:28

当我在Eclipse中使用PyDev插件写 import MySQLdb 时,出现了一个“未解决的导入”的提示。不过,程序运行起来没有问题。我可以加个注释来消除这个错误提示,但我应该怎么正确处理这个问题呢?

我该怎么让Eclipse知道MySQLdb这个库是存在的呢?

8 个回答

6

我通过做两件事解决了这个问题:

1) 在窗口的设置里,找到“首选项”->“PyDev”->“Python解释器”,然后把MySQLdb这个包添加到PYTHONPATH里。

C:\Python26\Lib\site-packages\MySQL_python-1.2.3c1-py2.6-win32.egg

2) 关闭并重新打开那个有红色叉叉的.py文件。

10

cdleary在两年前提供了原因,但这可能更简单。基本上,就是重新安装解释器。

  1. 选择窗口 - > 首选项 - > PyDev - > 解释器 - Python
  2. 在上面的框中选择Python解释器
  3. 点击删除
  4. 点击自动配置
  5. 同意所有内容。

这个方法在使用Fedora 17和随包管理一起提供的Eclipse 4.2.0时有效。

10

听起来你的 MySQLdb 可能在你的 sys.path 中,但没有在你 Eclipse 项目的 PYTHONPATH 中。换句话说,Eclipse 认为你在运行时会遇到导入错误,因为你没有完全配置好。谷歌上有说法,你可以通过 Window->Preferences->Preferences->PyDev->Python Interpreter 来修改这个设置,把 MySQLdb 模块的路径加进去。

如果你想知道 MySQLdb 在你系统中的位置,可以试试以下步骤:

  1. 打开一个交互式解释器,
  2. 输入 import MySQLdb
  3. 如果成功了,你可以通过 print MySQLdb.__file__ 来获取提示;这个路径可能是你需要指向的包中的 __init__ 文件。

撰写回答