有多個檔案,在任意乙個檔案中修改,在其他檔案中訪問的都是修改之後的值;
(1)用乙個檔案儲存變數
這個思路沒問題,但在乙個檔案中修改後,在另乙個檔案中訪問時還是原來的內容。
# 定義檔案a.py
x = 0
b.py
import a
a.x = 10
# 執行該檔案
可能我的**有問題吧,還是不能滿足我的需求c.py
import a
print(a.x)
# 執行結果還是0
(2)os.environ
注:os.envirion只能儲存字串型別;
驗證:
a.py
# 格式:os.environ['環境變數名稱']='環境變數值
os.environ["now"] = 'aaa'
b.py
# 設定並執行
os.environ["now"] = time.strftime("%y-%m-%d %h:%m:%s")
(3)c.py
print(os.environ["now"])
# 結果仍然是aaa
首先配置config.py模組,config需要設定get_***和set_***的方法提供對外的介面。
然後在其他模組引用:config.py
class global_var:
'''需要定義全域性變數的放在這裡,最好定義乙個初始值'''
name = 'my_name'
# 對於每個全域性變數,都需要定義get_value和set_value介面
def set_name(name):
global_var.name = name
def get_name():
return global_var.name
test.py
這個不行,這測試結果還是在乙個檔案中修改檢視的。import config
# 引用全域性變數
name = config.get_name()
# 修改全域性變數
config.set_name('new_name')
# 檢視修改後的全域性變數
print(config.get_name())
Python 中的跨模組共享變數
這方法也是官方檔案中faq中給出的方法。在單個程式中跨模組共享資訊的規範方法是建立乙個特殊模組 通常稱為config或cfg 只需在應用程式的所有模組中匯入配置模組 然後該模組可用作全域性名稱。因為每個模組只有乙個例項,所以對模組物件所做的任何更改都會反映在任何地方。例如 config.py x 0...
C extern定義多檔案共享全域性變數
我覺得題主需要的回答是 把變數定義在函式外面 比如這樣 include include std string msg 這個就叫全域性變數 intmain 不過呢,這麼做以後你會逐漸逐漸遇到各種問題,比如說多個.cpp檔案都要用到同乙個全域性變數咋辦?你需要做的是在乙個.cpp裡定義這個變數,然後在標...
核心模組共享變數例項
您的核心必須已經啟用這些選項進行了編譯 loadable module support enable loadable module support module unloading module versioning support experimental automatic kernel mo...