作者frankofranko (池上米)
看板Python
標題[問題] 修改其他檔案的全域變數
時間Mon Jun 25 03:10:27 2012
我是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
推 mantour:你的執行方是是在command line依序執行A.py 和B.py嗎 06/25 08:46
→ mantour: 式 06/25 08:46
→ frankofranko:不是耶~ 我是拿一個架構滿大的程式改的 06/25 11:38
→ frankofranko:一開始是python A.py 然後會執行到其他檔案這樣 06/25 11:38
→ frankofranko:不過我應該有辦法解決了 謝謝你!!! 06/25 11:39