将嵌套列表转换为嵌套字典 [英] Converting nested list into nested dictionary

查看:433
本文介绍了将嵌套列表转换为嵌套字典的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我有这个列表:

list1 = [['X1',2],['X2',4],['Y1',2],['Y2',4]]

我想创建这个字典:

dict1 = {'X': {'1':2},{'2':4},'Y':{'1':2},{'2':4}}

以便我可以使用dict1['X']['1']并输出'2'

so that I can use dict1['X']['1'] and this outputs '2'

有人可以帮我吗?我尝试了多种方法,但没有成功.

Can someone help me out? I've tried multiple approaches but without any success.

推荐答案

您可以使用collections.defaultdict:

>>> from collections import defaultdict
>>> list1 = [['X1',2],['X2',4],['Y1',2],['Y2',4]]
>>> d = defaultdict(dict)
>>> for (c,i), n in list1:
...     d[c][i] = n
... 
>>> d
defaultdict(<class 'dict'>, {'X': {'1': 2, '2': 4}, 'Y': {'1': 2, '2': 4}})
>>> d['X']['1']
2

这篇关于将嵌套列表转换为嵌套字典的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆