2014-11-07 184 views
0

好的,我正在處理的項目需要*使用真正的全局變量(或五個),其他問題與跨模塊變量有關(稍後可能會有幫助,但尚未提供)。python中的真正的全局變量

這是我的問題:我有一個程序將運行一個環境模擬,我需要設置一些全局變量以便在某些函數中使用和修改。怎麼會這樣做呢?

*當我說要求我的意思是我還沒有找到一個更有效的方法來做到這一點。

+0

我可能會使用的memcached或Redis的這樣的事情。 – monkut 2014-11-07 01:23:38

+0

如果不是「跨模塊(如內置)全球」,「真正的全球化」是什麼意思?你是指在進程之間共享?在不同的時間單獨運行之間共享?在世界上任何一臺計算機上運行的程序的每個副本之間共享?球形,投影在地圖上的地圖? – abarnert 2014-11-07 01:39:54

+0

一如既往,但軟件開發中確實存在3種情況,其中全局變量是正確的答案。究竟是什麼阻止你將相關數據從一個功能傳遞到另一個? – 2014-11-07 01:43:14

回答

1

是的,有一種方法可以在遍佈多個模塊的函數中使用和修改全局變量。把變量的模塊中,並導入該模塊到您的主程序:

# globals.py 
klaatu = "Once in Persia reigned a king ..." 

 

# main_program.py 
import globals 

def modify_klaatu(): 
    print globals.klaatu 
    globals.klaatu = "It was the best of times, it was the worst of times."