在how to stop Pylint message C0103的答案中,@ ChristopheD准确地提到“pylint将所有模块级变量解释为'常量'。”
我喜欢Pylint,并且假设作者的默认行为具有代码质量令人鼓舞的原因。那么,任何人都可以告诉我:为什么 pylint将所有模块级变量解释为'常量'?
这可能是pylint强调隐式global variables, which are considered bad的方式吗?
答案 0 :(得分:0)
在答案Why is Global State so Evil?中,我们澄清了使用全局变量会增加复杂性和不确定性,因为您不知道谁访问了此全局变量。
如答案中所述,这也会使您的代码(单元)可测试性降低。
将其声明为常量更容易接受,因为当变量/常量不变时,您将不会有这种不确定性。