グローバル変数とローカル変数
Pythonでは、変数は定義された位置やコンテキストによってそのスコープが決定されます。基本的には、関数内で定義された変数はローカル変数となり、関数外で定義された変数はグローバル変数となります。
グローバル変数
グローバル変数は、プログラム全体から参照できる変数のこと。通常、プログラムの最上位レベルで定義され、すべての関数からアクセスできます。ただし、関数内からグローバル変数を更新するには、globalキーワードの使用が必要です。
gvar = 'abcdefg' # グローバル変数
def testfunc():
global gvar
gvar = '0123456'
print(gvar)
print(gvar)
testfunc()
print(gvar)
ローカル変数
ローカル変数とは、ある関数内で定義され、その関数内でのみ参照できる変数のこと。関数が呼び出されるたびに新しいローカル変数が作成され、関数が終了するとその変数は破棄されます。
def lfunc():
lvar = 'abcdefg'
print(lvar)
lfunc()
print(lvar) # これはエラーを引き起こします
これらの理解は、Pythonプログラムを適切に制御するために必要不可欠です。また、globalキーワードは適切に使用する必要があり、過度な使用はプログラムの可読性や保守性を低下させる可能性があります。