大部分場景需要相同的前置條件,為了避免代碼冗余以及重復造輪子,可以把需要的東西定義為全局變量,在使用的時候調用即可。
python在同一個模塊內變量是可以直接使用的,但是無法使用別的模塊的變量。此時可以建一個專門的全局變量管理模塊來實現跨文件(.py)的全局變量。
1.建一個glo.py文件
def _init(): # 初始化
global _global_dict
_global_dict = {}
def set_value(key, value):
""" 定義一個全局變量 """
_global_dict[key] = value
def get_value(key, defValue=None):
""" 獲得一個全局變量,不存在則返回默認值 """
try:
return _global_dict[key]
except KeyError:
return defValue
2.建全局管理模塊,config.py用來管理,配置所有需要使用的全局變量
from *** import glo
gol._init() #先必須在主模塊初始化(只在Main模塊需要一次即可)
#定義跨模塊全局變量
gol.set_value('name',tom)
gol.set_value('age',16)
.....
3.在你的py文件調用全局變量
from *** import gol,config #兩個都需要導入,否則會找不到get_value函數
nameNew= gol.get_value('name') #不帶值,使用的是config內的默認值
ageNew = gol.get_value('age',18) #也可以重新為其賦值