前言:
框架是用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
祭奠一下逝去的青春
网友评论