nonlocal-and-global (PLE0115) 源自 Pylint 代码检查工具。 作用 检查同时声明为 nonlocal 和 global 的变量。 为什么这不好? nonlocal 变量是在最近的封闭作用域中定义的变量,但不在全局作用域中,而 global 变量是在全局作用域中定义的变量。 将一个变量同时声明为 nonlocal 和 global 是矛盾的,将会引发 SyntaxError。 示例 counter = 0 def increment(): global counter nonlocal counter counter += 1 建议改为 counter = 0 def increment(): global counter counter += 1 参考 Python 文档:global 语句 Python 文档:nonlocal 语句