Pythonのグローバル変数を関数内で定義する方法

Pocket

Pythonのグローバル変数の使い方はとても簡単です。

global_var = 100

def my_func():
  global global_var
  print(global_var)

my_func()
# 100

my_funcという関数を使っている前提とします。
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

「my_func1」という関数の中で「global global_var」として「global_var = 100」と値を代入しています。
別の「my_func2」という関数の中でも「global global_var」とすると「my_func1」の値が「my_func2」に反映されます。
つまり双方の関数で「global 変数名」とすればOKです。

[ 2020年4月19日 | カテゴリー: Python, デジタル | タグ: ]

« | »

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

送信してください。


タグ

カテゴリー

最近の投稿

最近のコメント

固定ページ

アーカイブ

stabucky

写真

メタ情報