如何在Python中将嵌套列表转换为字典,其中lst [0] [0]是关键字

时间:2013-05-03 12:33:30

标签: python list dictionary python-3.x

请帮忙! 我有一个python(3x)嵌套列表,如下所示:

lst = [['kataba', 'V:', '3rd_sg_masc_perf_active'], ['kataba:', 'V:', '3rd_dual_masc_perf_active'], ['katabu:', 'V:', '3rd_pl_masc_perf_active'], ['katabat', 'V:', '3rd_sg_fm_perf_active'], ['katabata:', 'V:', '3rd_dual_fm_perf_active']]

我将切片一个实例,以便我的问题更清晰

>>> lst[0]
['kataba', 'V:', '3rd_sg_masc_perf_active']
>>> lst[0][0]
'kataba'
>>> lst[0][1:]
['V:', '3rd_sg_masc_perf_active']

问题是:如何将上面的嵌套列表转换为字典,例如,lst [0] [0]将是字典键,而lst [0] [1:]将是键。

此嵌套列表包含数万个元素。

你能帮助我吗,因为我尝试了很多选择,但似乎我没有逻辑去做。

提前感谢您的帮助和关注!

1 个答案:

答案 0 :(得分:4)

如果我理解正确,我认为你是在接下来的。

您可以将dict-comp用于版本2.7 +:

{ k[0]: k[1:] for k in lst }

在2.7(2.6及以下)之前,这可以使用dict内置来完成,例如:

dict( (k[0], k[1:]) for k in lst)
# {'kataba': ['V:', '3rd_sg_masc_perf_active'], 'katabat': ['V:', '3rd_sg_fm_perf_active'], 'katabata:': ['V:', '3rd_dual_fm_perf_active'], 'katabu:': ['V:', '3rd_pl_masc_perf_active'], 'kataba:': ['V:', '3rd_dual_masc_perf_active']}