God_全局map的引入

前言:

框架是用python寫的,其實沒有map這個說法,但是靈感來源于java的map,索性起名為map,雖然原理是一樣的,但是Python的map可比java 的簡單100倍啊,設置簡單且使用簡單

實際應用:

  • 實際工作中有很多地方會用到別文件中生產的數據,有的時候有沒法實現調用,這時候就需要一個全局的媒介,通過這個媒介將數據傳入到你想要應用的地方,這中方法唯一的限制就是使用的地方要在設置變量之后運行(這是廢話,但是得注意)

代碼及引用:

  • 方法:
#GlobalMap.py
class GlobalMap:
    # 拼裝成字典構造全局變量  借鑒map  包含變量的增刪改查
    map = {}
    def set(self, **keys):
        try:
            for key_, value_ in keys.items():
                self.map[key_] = value_
        except BaseException as msg:
            log.error(msg)
            raise msg
    def del_map(self, key):
        try:
            del self.map[key]
            return self.map
        except KeyError:
            log.error("key:'" + str(key) + "'  不存在")
    def get(self,*args):
        try:
            dic = {}
            for key in args:
                if len(args)==1:
                    dic = self.map[key]
                elif len(args)==1 and args[0]=='all':
                    dic = self.map
                else:
                    dic[key]=self.map[key]
            return dic
        except KeyError:
            log.warning("key:'" + str(key) + "'  不存在")
            return None
  • 引用:
# 在文件A中設置值
from path import GlobalMap
g_map = GlobalMap()
g_map.set(a=1,b=3,c=5)
# 在文件B中拿取值
g_map.get('a')
g_map.get('a','b')

這樣在實際應用中確實能方便不少,很贊
@晴天-2017-06-04 09:03:48
祭奠一下逝去的青春

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容