Python作用域:"UnboundLocalError: local variable 'c' referenced before assignment"。
Python作用域:"UnboundLocalError: local variable 'c' referenced before assignment"。
这个问题已经有答案了:
我正在尝试解决这个问题:
c = 1 def f(n): print c + n def g(n): c = c + n f(1) # => 2 g(1) # => UnboundLocalError: local variable 'c' referenced before assignment
谢谢!
admin 更改状态以发布 2023年5月21日
在函数内部,默认情况下,赋值的变量被视为本地变量。要赋值给全局变量,请使用global
语句:
def g(n): global c c = c + n
这是Python的一些奇怪的领域之一,我从来没有真正适应它。