我有一个在Eclipse中使用PyDev的Python项目,并且PyDev不断为我的代码生成错误的错误。我有一个settings
定义settings
对象的模块。我将其导入模块b
并使用以下属性分配属性:
from settings import settings
settings.main = object()
在我的某些代码(但不是全部)中,语句如下:
from settings import settings
print settings.main
...即使在代码运行没有问题的情况下,也会在Eclipse代码错误窗格中生成“从import:main导入未定义的变量:”消息。我该如何纠正?
对于项目中的代码,唯一的方法是添加一个声明,说明您期望该声明(可能受a保护,if False
因此它不会执行)(如果执行了静态代码分析,则只能看到您看到的内容,而不能看到运行时信息)自己打开该模块,则不会显示预期为main。
为了克服这个问题,有一些选择:
如果它是某个外部模块,则可以将其添加到中,forced builtins
以便PyDev为其生成外壳以获取运行时信息(有关详细信息,请参见http://pydev.org/manual_101_interpreter.html),即:大多数情况下,PyDev会将模块导入外壳中,并对模块中找到的类进行dir(module)
和dir
,以显示完成内容并进行代码分析。
您可以在出现错误的行中使用Ctrl + 1(对于Mac为Cmd + 1),PyDev将为您提供一个添加注释的选项,以忽略该错误。
可以创建一个stub
模块并将其添加到补全中predefined
(http://pydev.org/manual_101_interpreter.html上也有详细信息)。
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句