运行pylint后请考虑以下代码:
'''
Test
'''
i = 0
while i < 4:
myvar = i
i = i + 1
pylint报道:Constant name "myvar" doesn't conform to UPPER_CASE naming style (invalid-name)
但是当myvar
在运行过程中明显改变时,它真的是一个多少?
IIUC,它不是误报,而是myvar
被认为是一个常量,因为它在迭代期间永远不会改变,并且下一次迭代变量被视为“新”。我理解正确吗?
Pylint认为myvar
是常规的常量,因为它是全局的(在模块级别声明)。
通常,您不应该在模块级别上编写这样的代码,而是将其包装在函数中:
def main():
i = 0
while i < 4:
myvar = i
i = i + 1
if __name__ == '__main__':
main()