Pythonのグローバル変数を関数内で定義する方法
Pythonのグローバル変数の使い方はとても簡単です。
global_var = 100
def my_func():
global global_var
print(global_var)
my_func()
# 100
def my_func():
global global_var
print(global_var)
my_func()
# 100
「my_func」という関数の外で「global_var = 100」としています。
「my_func」という関数の中で「global 変数名」とするとグローバル変数になります。
関数の外で定義した変数が関数の中に反映されます。
実行するとグローバル変数の値「100」が出力されます。
ネット上の情報を見ると、グローバル変数に関する説明について「関数の外で定義した変数」と書かれています。
サンプルも関数の外、コードの地の部分で定義したものばかりです。
では、関数内でグローバル変数を定義するにはどうしたらいいでしょうか。
次のようにするとうまくいきました。
def my_func1():
global global_var
global_var = 100
my_func2()
def my_func2():
global global_var
print(global_var * 2)
my_func1()
# 200
global global_var
global_var = 100
my_func2()
def my_func2():
global global_var
print(global_var * 2)
my_func1()
# 200
「my_func1」という関数の中で「global global_var」として「global_var = 100」と値を代入しています。
別の「my_func2」という関数の中でも「global global_var」とすると「my_func1」の値が「my_func2」に反映されます。
つまり双方の関数で「global 変数名」とすればOKです。
[ 2020年4月19日 | カテゴリー: Python, デジタル | タグ: グローバル変数 ]
« 新型コロナ都道府県別人口あたり感染者数、死亡者数 | 石田純一の家系図 »
コメントを残す