globalキーワード
前のレッスンで触れたとおり、関数の中でグローバル変数に代入すると、別のローカル変数が新しく作られてしまいます。もし関数の中から本当にグローバル変数そのものを書き換えたい場合は、あらかじめglobal 変数名と宣言しておく必要があります。
💡 ヒント:globalを使うと便利な反面、どこでその変数が書き換わったのか追いにくくなり、コードの見通しが悪くなりがちです。本当に必要な場面に絞って使うことをおすすめします。
前のレッスンで触れたとおり、関数の中でグローバル変数に代入すると、別のローカル変数が新しく作られてしまいます。もし関数の中から本当にグローバル変数そのものを書き換えたい場合は、あらかじめglobal 変数名と宣言しておく必要があります。
count = 0
def increment():
global count
count += 1
increment()
increment()
print(count)練習問題:グローバル変数total = 0を定義し、global宣言してtotalに10を加算する関数add_ten()を作ってください。
total = 0
def add_ten():
global total
total += 10
add_ten()
print(total)