我有一个数据表,如下所示:|Country|State|City |Street||-------|-----|-----|------|| USA | AZ |city1| str1 || USA | AZ |city1| str2 || USA | AZ |city2| str1 || USA | AZ |city2| str3 || USA | MN |city3| str4 || MEX | CH |city4| str5 || MEX | CH |city4| str6 |将其转换为嵌套字典的正确方法是什么?我希望结果看起来像这样:nested_dict = { 'USA':{ 'AZ':{ 'city1':['str1','str2'], 'city2':['str1','str3'], }, 'MN':{ 'city3':['str3','str4'], }, }, 'MEX':{ 'CH':{ 'city4':['str5','str6'], }, },}
1 回答
尚方宝剑之说
TA贡献1788条经验 获得超4个赞
您可以使用嵌套的defaultdict:
from collections import defaultdict as dd
nested_dict = dd(lambda: dd(lambda: dd(list)))
for m in model.objects.all():
nested_dict[m.Country][m.State][m.City].append(m.Street)
添加回答
举报
0/150
提交
取消