[問題] 修改其他檔案的全域變數

看板Python作者 (池上米)時間13年前 (2012/06/25 03:10), 編輯推噓1(104)
留言5則, 2人參與, 最新討論串1/2 (看更多)
我是python的新手 很多觀念還不太懂.. google不到又有點緊急只好來po文 希望能有人幫我解答QQ 問題如下 兩個檔案有問題的部分大致如下 A.py global AAAAA AAAAA = False def setA(): global AAAAA AAAAA = True def getA(): global AAAAA print"get A: ",AAAAA class test(): def A_True(): getA() B.py class test2(): def changeA(): import A A.setA() 程式執行的順序為 1.先執行到A.py 有了一個test的物件 並且執行一次A_True() 印出False 2.執行到B.py 有了一個test2的物件 並且執行一次changeA() (期待在這邊把A.py裡的AAAAA變成True) 3.又回來使用先前那個test的物件 這時候執行A_True 仍然印出False 這是為什麼呢?? 應該要怎麼改才會對呢? 不好意思了這種問題好像很基本... 謝謝大家!! -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 220.136.181.148

06/25 08:46, , 1F
你的執行方是是在command line依序執行A.py 和B.py嗎
06/25 08:46, 1F

06/25 08:46, , 2F
06/25 08:46, 2F

06/25 11:38, , 3F
不是耶~ 我是拿一個架構滿大的程式改的
06/25 11:38, 3F

06/25 11:38, , 4F
一開始是python A.py 然後會執行到其他檔案這樣
06/25 11:38, 4F

06/25 11:39, , 5F
不過我應該有辦法解決了 謝謝你!!!
06/25 11:39, 5F
文章代碼(AID): #1FvsOclg (Python)
文章代碼(AID): #1FvsOclg (Python)