UnboundLocalError:带赋值的函数中的变量作用域
当在函数中使用变量而未正确定义或导入时,会出现 UnboundLocalError。理解作用域的概念对于解决这个问题至关重要。
Python 区分函数内的局部变量和全局变量。当变量在函数内部被赋值时,它就成为局部变量。该局部变量优先于任何同名的全局变量。
在提供的示例中,当执行 c = 1 时,会创建一个局部变量 c。此局部变量使用值 3 覆盖全局变量 c。但是,print(c) 语句尝试访问此时未定义的全局 c,从而导致 UnboundLocalError。
解决此问题,Python提供了两个选项:
以上是为什么 `c = 1` 会导致 Python 函数中出现 `UnboundLocalError`?的详细内容。更多信息请关注PHP中文网其他相关文章!