Skip to main content
 首页 » 编程设计

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

2025年05月04日17linjiqin

我有一个 Python 3.x 嵌套列表,如下所示:

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:] 将是键的值。

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

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

请您参考如下方法:

如果我对你的理解正确,我认为你在寻找以下内容。

您可以为 2.7+ 版本使用 dict-comp:

{ 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']}