python 小技巧,给设计好的dict 增加嵌套值
beijing={}
beijing={'shanghai':'123'}
现在要给beijing的增加一个shanghai1 的嵌套值
beijing['shanghai1']['name']=1
运行:

那么在python3.5 后给我提供了一个collections模块可以解决。
defaultdict允许我们用一个聪明的方式绕过这个问题。 首先我分享一个使用dict触发KeyError的例子,然后提供一个使用defaultdict的解决方案。
|
1
2
3
4
5
6
7
|
import collections,jsontree=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)) |
{"shanghai1": {"name": "yello"}}
浙公网安备 33010602011771号