我有代码,其变量分配给函数,如下例所示。 代码可以工作,但是当我尝试在另一个模块中使用foo.x时,我遇到了pylint错误。如果我在没有函数引用的情况下定义模块变量,如下面的变量y,则不会出现pylint错误。
有什么办法让pylint识别module1.foo.x?
in module1:
def foo():
foo.x = 1
foo.x = 0
y = 0
in module2:
import module1
p = module1.foo.x # generates a "unresolved variable from import" for x
p = module1.y # no pylint errors generated for y
答案 0 :(得分:0)
窗口 - >偏好 - > PyDev - >编辑 - >代码分析 - >未定义 - >来自导入的未定义变量 - >忽略
然后尝试关闭并重新打开eclipse。
希望它有所帮助。
答案 1 :(得分:0)
我认为PyLint似乎没有认识到这种模式(向方法添加变量)...你可以尝试向他们报告问题,看看他们是否愿意修复它(https://github.com/PyCQA/pylint/issues)
所以,一个解决方法是禁用该行中的检查(在PyDev中你可以在该行中执行Ctrl+1
并且它将为你提供一个选项来添加注释以忽略该行中的PyLint错误)。