以下のコードだと関数xは正常に0が出力されますが、関数yはエラーになります。
UnboundLocalError: local variable 'n' referenced before assignment
参照はできるのに+=1ができないのはなぜなのでしょうか。
python
1n = 0 2 3 4def x(): 5 print(n) 6 7 8def y(): 9 n += 1 10 print(n) 11 12 13x() 14y()
関数yを以下のように変更すると正常に出力されますが逆に関数xにglobal修飾が不要なのはなぜでしょうか。
python
1def y(): 2 global n 3 n += 1 4 print(n)

回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2021/06/30 05:00