python自定义的一个字典扩展类,可以让字典操作起来更简单,
比如:
原来需要这样用:dic[‘website’] = ‘75271.com’
有了这个类,你可以这样用:dic.websites = ‘75271.com’
是不是更简单。
类定义如下
class easyaccessdict(dict): def __getattr__(self,name): if name in self: return self[name] n=easyaccessdict() super().__setitem__(name, n) return n def __getitem__(self,name): if name not in self: super().__setitem__(name,nicedict()) return super().__getitem__(name) def __setattr__(self,name,value): super().__setitem__(name,value)
使用范例
>>> d= easyaccessdict() >>> d {} >>> d.foo.bar= 'a' >>> d {'foo':{'bar':'a'}} >>> d['foo'] {'bar':'a'} >>> d['foo'].blah= 7 >>> d {'foo':{'bar':'a', 'blah':7}} >>> d.a.b.c.e.e.f.g.h= 11