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

标签 python list dictionary python-3.x

我有一个 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']}

关于python - 如何在 Python 中将嵌套列表转换为字典,其中 lst[0][0] 是键,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16359052/

相关文章:

python - 如何从 boto3 cloudformation describe_stack API 中仅获取 OutputKey?

python - 如何在Django Rest框架中为list_route利用内置分页功能?

python - 许多小矩阵加速循环

vba 显示对其他程序的引用

arrays - 与WCF互操作性的数组与列表

java - 如何访问 Java 中 Arraylist 中的字典数据?

python - Django:获取查询集/字典中项目的固定值

python - 在 Tornado 中运行异步后台任务

r - 使用三点参数时的 list(...) 与 as.list(...)

c++ - Map迭代器遍历技术