このような混乱を避けるために、そもそもグローバル変数の使用を避けるべきであることはわかっていますが、もしグローバル変数を使用する場合、次のように使用することは有効でしょうか? (別の関数で作成された変数のグローバル コピーを呼び出そうとしています。)
x = "somevalue"
def func_A ():
global x
# Do things to x
return x
def func_B():
x = func_A()
# Do things
return x
func_A()
func_B()
2 番目の関数が使用する は、が使用および変更するx
のグローバル コピーと同じ値を持ちますか? 定義後に関数を呼び出す場合、順序は重要ですか?x
func_a
ベストアンサー1
グローバル変数に単純にアクセスしたい場合は、その名前を使用するだけです。ただし、値を変更するには、global
キーワード。
例えば
global someVar
someVar = 55
これにより、グローバル変数の値が 55 に変更されます。それ以外の場合は、ローカル変数に 55 が割り当てられるだけです。
関数定義リストの順序は重要ではありません (何らかの方法で相互参照していないと仮定)。呼び出される順序が重要です。