python 小技巧,给设计好的dict 增加嵌套值

beijing={}
beijing={'shanghai':'123'}
现在要给beijing的增加一个shanghai1 的嵌套值
beijing['shanghai1']['name']=1
运行:

python 小技巧,给设计好的dict 增加嵌套值

那么在python3.5 后给我提供了一个collections模块可以解决。

defaultdict允许我们用一个聪明的方式绕过这个问题。 首先我分享一个使用dict触发KeyError的例子,然后提供一个使用defaultdict的解决方案。

import  collections,json
tree=lambda  :collections.defaultdict(tree)
some_dict=tree()
some_dict['shanghai']='122'
print(json.dumps(some_dict))
some_dict['shanghai1']['name']='yello'
print(json.dumps(some_dict))

 输出:

python 小技巧,给设计好的dict 增加嵌套值

 

上一篇:增删改查实现(续)


下一篇:【洛谷4001】 [ICPC-Beijing 2006]狼抓兔子