Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/wix/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python Pylint错误地抱怨未定义的变量 总结_Python_Pylint_Undefined Variable - Fatal编程技术网

Python Pylint错误地抱怨未定义的变量 总结

Python Pylint错误地抱怨未定义的变量 总结,python,pylint,undefined-variable,Python,Pylint,Undefined Variable,Pylint抱怨类声明和以下函数中存在未定义的变量。如果我注释掉类声明,函数仍然会突出显示,我不确定为什么 环境 操作系统:Suse Leap 42.3 编辑:vscode 1.38 Python:3.4.6 Pylint:1.4.4 Pylint参数:[“--load plugin”,“Pylint_protobuf”,“--enable=F,E,W”] 复制箱 #/usr/bin/env蟒蛇3 ''伪文档字符串'' 从ctypes导入*#pylint:disable=未使用的通配符导入 类框

Pylint抱怨类声明和以下函数中存在未定义的变量。如果我注释掉类声明,函数仍然会突出显示,我不确定为什么

环境 操作系统:Suse Leap 42.3
编辑:vscode 1.38
Python:3.4.6
Pylint:1.4.4
Pylint参数:[“--load plugin”,“Pylint_protobuf”,“--enable=F,E,W”]

复制箱
#/usr/bin/env蟒蛇3
''伪文档字符串''
从ctypes导入*#pylint:disable=未使用的通配符导入
类框(结构):
_字段=[(“x”,c_浮点),
(“y”,c_浮动),
(“w”,c_浮动),
(“h”,c_浮动)]
def示例(a、b):
c=str(a+b)
印刷品(c)
这将产生以下错误/警告

未定义变量“结构”pylint(未定义变量)[6,11]
未定义变量“a”pylint(未定义变量)[13,13]
未定义变量“b”pylint(未定义变量)[13,17]
未定义变量“c”pylint(未定义变量)[14,11]
本地禁用未使用的通配符导入(W0614)pylint(本地禁用)[4,1]

如果我将鼠标悬停在
结构上,我可以看到
类PyCStructType()
,同样,如果我将鼠标悬停在
c上,我可以看到
c:str
,因此数据类型是已知的

问题
  • 为什么上面的代码会产生pylint错误?(我希望只看到本地禁用未使用的通配符导入的警告)
  • 此问题是否特定于我的环境?(python的旧版本等)

注意:我不想使用
#pylint:disable=undefined variable

一次只能在一个文件上工作的linter无法分辨通配符导入定义了什么名称,因此我对它关心
结构毫不奇怪。我不知道为什么它会混淆
a
b
c
。我原以为它也会对
c_float
(可能会重复)感到困惑,因为我认为这也来自
ctypes
。您可以通过使用更明确的导入语句来满足它:
来自ctypes导入结构,c_float
(尽管这是否会修复
a
b
c
,我不知道)。