1
openroc OP |
2
binux 2014-05-28 15:11:14 +08:00
class Obict(dict):
....__getattr__ = dict.__getitem__ ....__setattr__ = dict.__setitem__ |
5
binux 2014-05-28 15:18:36 +08:00 1
@openroc 嵌套就是 return 的时候 Obict 包一下就完了,list 同理
而且,建议扩展基础类型的时候从 dict, 或者 UserDict 继承,保证类型兼容性。不然你让 keys, items, values, for loop 怎么办? |
7
clino 2014-05-28 15:54:22 +08:00
这个有类似的作用:
https://code.google.com/p/ulipad/source/browse/trunk/modules/dict4ini.py 不过是用在ini文件上 d = DictIni('t2.ini', format="%s:%s", hideData=True) d.a.a = 'mama' d.a.b = 'lubs me!' d.b.a = 'i' d.b.b = 'lub bosunmi!' d.c.a = 'dada' d.c.b = 'lubs me too!' d.save() |
8
chuangbo 2014-05-29 13:16:43 +08:00
赞同 @binux,继承 dict 是必须的。
web.py 的 Storage 是一个比较完整的实现。 https://github.com/webpy/webpy/blob/master/web/utils.py#L52 |