我希望标题足够清楚,我不知道如何表达这个。
此代码段按预期工作(7 行,输出为 1)
v=1
def test():
print v
for i in range (5):
print v
v=1
test()
print v
但是,当我尝试将 max 命令添加到函数时
v=1
def test():
print v
for i in range (5):
v = max(i,v)
print v
v=1
test()
print v
我收到一个错误:
UnboundLocalError: local variable 'v' referenced before assignment
这一直让我感到困惑。为什么我需要v
在这种情况下发送到函数?