阅读量:0
UnboundLocalError 通常发生在函数内部尝试修改局部变量的值时,但该变量并未在函数内部进行赋值操作。闭包函数中也可能出现 UnboundLocalError 错误,因为在闭包函数中内部函数可以访问外部函数的局部变量,但如果在内部函数中尝试修改外部函数的局部变量的值时,就有可能出现 UnboundLocalError 错误,因为 Python 会将该变量视为局部变量而不是外部函数的变量。为了解决这个问题,可以使用 nonlocal 关键字来声明该变量为外部函数的变量,而不是局部变量。