【发布时间】:2013-08-12 00:21:36
【问题描述】:
在带有 PyDev 的 Eclipse 中,我在使用此代码时收到 Unresolved import: pilImage 错误。
当从 PyDev 或 shell 中执行时,代码运行良好,但 IDE 高亮显示这是一个错误。
from PIL import Image as pilImage
# do something with pilImage
我该如何解决这个问题?
【问题讨论】:
在带有 PyDev 的 Eclipse 中,我在使用此代码时收到 Unresolved import: pilImage 错误。
当从 PyDev 或 shell 中执行时,代码运行良好,但 IDE 高亮显示这是一个错误。
from PIL import Image as pilImage
# do something with pilImage
我该如何解决这个问题?
【问题讨论】:
我觉得PIL应该怎么用可能有点误会……
PIL 有一个相当不常见的打包方式,其中 PIL 库被添加到 PYTHONPATH(而不是包含它的目录),因此,如果您使用 easy-install 进行安装,它会执行以下操作:
/Lib
/Lib/site-packages
/Lib/site-packages/PIL-1.1.7-py2.6-win32.egg
/Lib/site-packages/PIL-1.1.7-py2.6-win32.egg/Image.py
因此,实际应该进行的导入是:import Image as pilImage(即:在导入中没有 from PIL)。
支持导入应该是这样的参考:http://effbot.org/imagingbook/introduction.htm
在这种情况下,添加到 PYTHONPATH 的目录应该是:“/Lib/site-packages/PIL-1.1.7-py2.6-win32.egg”
请注意,如果您将目录 /Lib/site-packages/PIL-1.1.7-py2.6-win32.egg 重命名为 /Lib/site-,您的导入可能会起作用packages/PIL 并将 /Lib/site-packages/ 留在 PYTHONPATH 中(在这种情况下,您仍然需要转到 PyDev 解释器配置并只需按应用以便它找到出一个新的 PIL 包被添加到 PYTHONPATH -- 注意在这种情况下 /Lib/site-packages/PIL 不应该被添加到 PYTHONPATH)
【讨论】:
你在安装 PyDev 后是否将 PIL 安装为鸡蛋?如果是这样,PyDev 将不知道它的存在。删除并重新添加解释器以解决此问题。请参阅此SO question 了解更多信息。
【讨论】:
您确定您的 PyDev 配置解释器知道 PIL 包及其内容吗? 如果您在安装 PIL 包之前配置了 PyDev Python 解释器,那么它对此一无所知。
【讨论】:
有时 PyDev 要求您重新启动 Eclipse 以更正错误消息。这通常是由于用户在添加模块之前编写导入。
【讨论】: