在Eclipse

时间:2016-12-24 00:43:45

标签: python eclipse pydev

我在Eclipse中安装了Pydev,一切正常。我可以导入通过“pip install xxx”安装的其他模块,没有任何警告或错误。

但是,当我创建两个要测试的文件时,我收到了这样的警告:

测试/ HelloWorld.py

def hello():
    print('Hello World')

测试/ HelloWorldTest.py

from HelloWorld import hello

def test():
    hello()

我可以毫无问题地运行这个“HelloWorldTest”,它可以正确打印“Hello World”。但是,在我的PyDev编辑器中,它总是警告:

hello Found at: test.HelloWorldTest

from HelloWorld import hello

―――――――――――――――――――――――――――――――――――――――――
Unresolved import: hello

为什么它显示'hello'是未解析的导入,以红色突出显示?但是,我仍然可以正确运行它。

很奇怪!

编辑: enter image description here

1 个答案:

答案 0 :(得分:0)

也许你的IDE指向不同的Python解释器。

我不使用Eclipse,但它也适用于PyCharm。 在PyCharm中,我可以为代码编辑器选择不同的Python解释器,并为运行选择不同的Python解释器。通常情况下,我不会为同一个项目选择不同的解释器并使自己感到困惑,但边缘情况可能会有所不同。

我认为Eclipse IDE正在发生类似的事情。请仔细检查您的设置,确保代码编辑器指向正确的Python解释器。

如果您正在处理多个Python项目,强烈建议使用某种Python虚拟环境来避免依赖性冲突。如果你在Linux或Mac上,PyEnv(https://github.com/yyuu/pyenv)是一个很好的。

我非常确定您的IDE上没有正确设置Python解释器的路径。

答案更新

为什么您的文件夹图标看起来如此不同?它们是在zip文件夹中还是什么东西?

它在我的机器上完美运行。我没有看到任何错误。

enter image description here

请检查我的设置。

窗口>偏好>在搜索框中输入 python interpreter 。尝试删除解释器并再次手动添加。

enter image description here

右键单击项目文件夹>属性>在搜索框中输入解释器

enter image description here

希望这可以解决您的问题。

Python虚拟环境

当您正在处理许多不同的项目时,强烈建议您使用Python虚拟环境(如果您还没有)。如果你在Linux或Mac上,PyEnvhttps://github.com/yyuu/pyenv)是一个很好的。或者,如果您使用的是Windows,则可以使用默认VirtualEnvVirtualEnvWrapper

关于编码风格的快速说明

这与你的问题无关,但我认为值得一提。

我强烈建议您在IDE上启用PEP8功能,因为它可以帮助您使项目和代码更加一致。

建议将模块名称设为小写。 ref = https://www.python.org/dev/peps/pep-0008/#package-and-module-names