1. 程式人生 > >import匯入多模組包含全域性變數時出現的問題

import匯入多模組包含全域性變數時出現的問題

當多個模組都使用了同一個全域性變數時會出現問題
[例]common.py檔案中 有一個HANDLE_FLAG = FALSE的全域性變數
在這裡插入圖片描述
在這裡插入圖片描述
(1)當我們都使用import common時 沒有任何問題。原因是import會在handle_msg.py中定義一個物件common指向common.py中HANDLE_FLAG(模組中的變數)
因此HANDLE_FLAG值的改變不影響呼叫
(2)但是當我們使用from common import HANDLE_FLAG 時,
相當於定義一個HANDLE_FLAG 變數指向FLASE(值),再次呼叫HANDLE_FLAG = TRUE時,相當於把HANDLE_FLAG =FLASE
=>HANDLE_FLAG =FLASE 並沒有改變common.py中的變數
因此在使用多模組且有共同使用的變數時要使用import *** 進行匯入