2

2 つの関数間で状態を保存/共有するサンプル プログラムを Python 2.7 で作成しようとしています。関数を呼び出すと、次に関数を呼び出すときに、以前の値が記憶されている必要があります。これが私の現在のコードです:

def stuff():
    global x 
    x = 100
    def f():
        global x
        x = x * 2
        return x
    def g():
        global x
        x = x * 4
        return x
    return (f, g)

a,b = stuff()
print(a());

このコードは機能しますが、キャッチは ... のスコープ外のグローバル変数と見なされてはならないxことです (これが、最初に x を埋め込むことの全体的なポイントです)。それで、それはグローバルですか、それともローカルですか?stuff()stuff()xstuff()

4

4 に答える 4