グローバル変数の使い方
pythonではグローバル変数を使用することができます。
グローバル変数とは、そのプログラム内のどこからでも参照できる変数のことです。
g_val = 'global_val' def method1(): print(g_val) method1()
global_val
method1関数内にはg_valという変数は存在しませんが、printで出力することができます。
グローバル変数を関数内で書き換える
グローバル変数をローカル関数内で書き換える場合は、少し注意が必要です。
関数内で、g_valはローカル変数ではなく、グローバル変数であると宣言する必要があります。
g_val = 'global_val' def method1(): g_val = 'rewrited_global_val' method1() print(g_val)
global_val
上記の例では、あくまでmethod1の中でg_valというローカル変数を定義しているだけになります。
なので、print(g_val)で'rewrited_global_val'を出そうとしてもうまくいきません。
プログラム上部で定義されているg_valとmethod1内で定義されているg_valは全く別物です。
関数内でグローバル変数を変更したい場合は、global修飾子を付ける必要があります。
g_val = 'global_val' def method1(): global g_val g_val = 'rewrited_global_val' method1() print(g_val)
rewrited_global_val
これで関数内からグローバル変数を変更することができます。