为什么PyDev Eclipse编辑器会报告不存在的代码中的错误?

时间:2016-04-28 13:35:33

标签: eclipse pydev six

我的PyDev Eclipse项目只有一个包含以下四行的文件:

import os
from six.moves.urllib.request import urlretrieve
from six.moves import cPickle as pickle
print("OK")

Eclipse会报告这些"问题":

Unresolved import: pickle   main.py /1_notminst line 2  PyDev Problem
Unresolved import: urlretrieve  main.py /1_notminst line 1  PyDev Problem

然而,Eclipse运行程序没有任何问题,并从命令行打印" OK"以及python3(或ipython3):

> python3 main.py
OK

知道为什么Eclipse + PyDev的编辑器没有看到那个库吗?它是Python Six库。 pip3报告库已安装:

> pip3 show six
---
Metadata-Version: 1.1
Name: six
Version: 1.10.0
Summary: Python 2 and 3 compatibility utilities
Home-page: http://pypi.python.org/pypi/six/
Author: Benjamin Peterson
Author-email: benjamin@python.org
License: MIT
Location: /usr/lib/python3/dist-packages
Requires: 
Classifiers:
  Programming Language :: Python :: 2
  Programming Language :: Python :: 3
  Intended Audience :: Developers
  License :: OSI Approved :: MIT License
  Topic :: Software Development :: Libraries
  Topic :: Utilities

导入其他库就好了。

我在Ubuntu 16.04和Python 3.5下运行Eclipse Mars。

谢谢!

1 个答案:

答案 0 :(得分:1)

我发现如何解决这个问题,感谢发布在stackoverflow上的其他人。缺少它,添加"六"到PyDev下的项目属性 - Interpreter / Grammar>点击此处配置和解释未列出> Forced Builtins>新......

Eclipse需要花费几分钟时间来处理更改,最终还是有效。

这里有帮助的帖子: Eclipse-Pydev cannot find Lucene Library