1. ホーム
  2. python

[解決済み] Pythonでクラス内のグローバル変数にアクセスするには?

2023-07-12 17:32:19

質問

こんなものがあります。

g_c = 0

class TestClass():
    global g_c
    def run(self):
        for i in range(10):
            g_c = 1
            print(g_c)

t = TestClass()
t.run()

print(g_c)

グローバル変数g_cを実際に変更するにはどうしたらよいでしょうか?

どのように解決するのですか?

宣言することで global と宣言することで、アクセスする関数の内部で

g_c = 0

class TestClass():
    def run(self):
        global g_c
        for i in range(10):
            g_c = 1
            print(g_c)

この Pythonのドキュメント について、このように書かれています。 global ステートメントについてです。

グローバルステートメントは、現在のコードブロック全体に対して保持される宣言です。