首页 > 解决方案 > 字典中的元组列表

问题描述

我在理解 python 如何将元组列表转换为字典时遇到了一些问题。例如,

from itertools import combinations as comb
a=[1,2,3,4]
l_t=list(comb(a,2))
print(l_t)
d_t=dict(l_t)
print(d_t)

输出是:

[(1, 2), (1, 3), (1, 4), (2, 3), (2, 4), (3, 4)]
{1: 4, 2: 4, 3: 4}

我只是想知道如果我们有几个相等的键,转换过程中会发生什么。我不明白为什么键“1”只有一个值,键“2”只有一个值等等?抱歉,可能是个愚蠢的问题,但我已经找到了答案,提前谢谢你。

标签: pythontuples

解决方案


正如我们所看到的,生成的 dict 包含每个元组的最后一个元素[0]

[(1, 2), (1, 3), ( 1 , 4), (2, 3), ( 2 , 4), ( 3 , 4)]

{1:4, 2:4, 3:4}

这意味着代码

dict(list_of_tuples)

像这样工作:

d = {}
lst = [(1, 2), (1, 3), (1, 4), (2, 3), (2, 4), (3, 4)]
for x in lst:
  d[x[0]] = x[1]

推荐阅读