【Python】グローバル変数の使い方・定義【超簡単】

こんにちは、マサキです。

今回はPythonグローバル変数を使う方法をご紹介します。

変数を関数の外で定義する方法関数内でglobalを使ってグローバル変数の値を変更する方法の2つを説明していきたいと思います。

スポンサーリンク

グローバル変数の扱い

関数の外で変数を定義する

# グローバル変数g(重力加速度)を定義
g = 9.8

# 力を計算するforce関数を定義
def force(m): # 引数には重さm(kg)を使う
    return m * g

このように、関数の外でgを定義しておくと、force関数を使うときにその値をそのまま使うことができます。

force(100)
#980

↑のようにm = 100のときには980(N)の力がかかることが分かります。

関数の中でglobalを使ってグローバル変数の値を変える

グローバル変数aがあるときに、その値をある関数によって変更したいときに、↓のように関数を定義するとうまくできません。

# グローバル変数a(= 0)を定義
a = 0

# aの値を変える関数change_valueを定義(失敗例)
def change_value1(b):
    # このままaにbを代入
    a = b
# aの値を1に変更
change_value1(1)
# aの値が1になったかどうか確認
print(a)
# 0
# 0のままで1にはならない

↑のように定義しても、aの値を変更することはできません。

正しくは↓のように定義します。

# グローバル変数a(= 0)を定義
a = 0

# aの値を変える関数change_valueを定義(成功例)
def change_value2(b):
    global a # ここでaをグローバル変数として使うことを宣言する
    a = b
# aの値を1に変更
change_value2(1)
# aの値が1になったかどうか確認
print(a)
# 1
# 1になった!

関数の中でglobalを使って、変数aをグローバル変数として使うことを宣言してあげることで、aの値を変更することができます。

タイトルとURLをコピーしました