Python のグローバルスコープとは
Pythonの世界では「global」キーワードを用いて、関数の内外から読み書きできる変数をグローバル変数として宣言できます。
通常、関数内で定義した変数はローカル変数となり、関数内でしか使えず、関数外からアクセスできない。しかし、関数内でグローバル変数を変更したり、アクセスする場合がある。そのときはglobalキーワードを使う。
グローバルキーワードを使用する一般構文は次のとおりです。
def function_name():
global variable_name
# 函数体
ここで、variable_nameはグローバル変数として宣言されるべき変数名です。
関数内でglobalキーワードで宣言した変数は関数内で読み書きでき、その書き換えは関数外部からのその変数へのアクセスにも影響します。
グローバルキーワードの利用例は下記のとおりです。
count = 0
def increment():
global count
count += 1
increment()
print(count) # 输出: 1
上の例では、count変数は関数のincrement()の中でglobalキーワードでグローバル変数として宣言されています。そして、関数の中でcountに1が加算されています。最後に、関数の外でcountの値を出力すると1が出力されます。