Python:将键值元组列表转换为字典?

我有一个像这样的列表

[(A, 1), (B, 2), (C, 3)] 

并想把它变成一个字典,看起来像

 (A: 1, B: 2, C: 3) 

最好的办法是什么呢? 谢谢。

编辑:它实际上更像

 [(A, 12937012397), (BERA, 2034927830), (CE, 2349057340)] 

这给了我同样的错误,试图拆分列表和压缩。 ValueError:字典更新顺序元素#0的长度为1916; 2是必需的

这是你真正的问题。

答案是你列表中的元素不是你所想的那样。 如果你键入myList[0]你会发现你的列表的第一个元素不是一个二元组,例如('A', 1) ,而是一个长度为1916的可迭代元素。

一旦你真的有一个在你原来的问题( myList = [('A',1),('B',2),...] )中表示的forms的列表,所有你需要做的是dict(myList)

 >>> dict([('A', 1), ('B', 2), ('C', 3)]) {'A': 1, 'C': 3, 'B': 2} 

你尝试过吗?

 >>> l=[('A',1), ('B',2), ('C',3)] >>> d=dict(l) >>> d {'A': 1, 'C': 3, 'B': 2}