BBH
-Biz Branding Hub-
投稿日 : 
2019/11/22
更新日 : 
2019/11/22

【python】グローバル変数の使い方

グローバル変数の使い方

pythonではグローバル変数を使用することができます。
グローバル変数とは、そのプログラム内のどこからでも参照できる変数のことです。

GlobalSample1.py

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

これで関数内からグローバル変数を変更することができます。

Profile

管理人プロフィール

都内でITエンジニアをやってます。
変遷:中規模SES→独立系SIer→Webサービス内製開発
使用技術はその時々でバラバラですが、C#、AWSが長いです。
どちらかと言うとバックエンドより開発が多かったです。
顧客との折衝や要件定義、マネジメント(10名弱程度)の経験あり。
最近はJava+SpringBootがメイン。

Recommend