使用元组列表中的第一个元素作为字典键

Jac*_*tad 1 python dictionary list

如何获取如下元组列表:

test = [('A', 1, 8, 4), ('B', 2, 6, 2), ('C', 3, 6, 2)]
Run Code Online (Sandbox Code Playgroud)

并制作一个字典,使用每个元组中的第一个元素作为键

output = {'A': (1, 8, 4), 'B':(2, 6, 2), 'C': (3, 6, 2)}
Run Code Online (Sandbox Code Playgroud)

如果原始列表是长度为 2 的元组列表,则dict(test)可以正常工作,但在这种情况下不起作用。

我可以[i[0] for i in test]提取每个元组的第一个元素,但我认为可能有一种更有效/Pythonic 和可推广的方法来执行此操作。

谢谢!

Bre*_*arn 5

您可以使用字典理解:

output = {item[0]: item[1:] for item in test}
Run Code Online (Sandbox Code Playgroud)