[問題] 拿別的檔案的global變數會有問題

看板Python作者 (哈哈哈)時間16年前 (2009/07/23 19:05), 編輯推噓3(302)
留言5則, 2人參與, 最新討論串1/2 (看更多)
我的code如下 我想要在self.a.Test()執行完後,print出123數值 但都辦不到(只會印出0) 要怎樣在A.py裡面拿到main.py中kkkkk已經改變過的數值呢? -------------------------------------------------------- main.py: import A kkkkk = 0 def SetAAPP(num): global kkkkk kkkkk = num def GetAAPP(): global kkkkk return kkkkk class B: def __init__(self): pass def Initial(self): self.a = A.A() self.a.Test() if __name__ == "__main__": b = B(); SetAAPP(123) b.Initial(); A.py: import main class A: def __init__(self): pass def Test(self): aaaaa = main.kkkkk print aaaaa -- -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 59.124.99.126

07/23 19:23, , 1F
kkkkk 是 immutable 的....
07/23 19:23, 1F

07/23 19:26, , 2F
如果我想要拿別檔案改變過的global變數,可以嗎?
07/23 19:26, 2F

07/23 19:26, , 3F
就像C一樣拿到別檔案的static變數...
07/23 19:26, 3F

07/23 19:43, , 4F
抱歉 我搞錯了 跟是不是immutable沒有關係
07/23 19:43, 4F

07/23 19:49, , 5F
因為A.py的main是重新import的...
07/23 19:49, 5F
文章代碼(AID): #1AQ4GM8E (Python)
文章代碼(AID): #1AQ4GM8E (Python)