タイトルが十分に明確であることを願っていますが、これをどのように表現すればよいかわかりません。
このコード セグメントは期待どおりに動作します (出力に 1 を含む 7 行)。
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
関数に送信する必要があるのですか?