如何从特定的python列表创建一个dict

use*_*998 2 python

我有一个python列表:

[('Three', 8), ('Nine', 9), ('Two', 4), ('Two', 5), ('One', 0), ('One', 1), ('One', 6)]
Run Code Online (Sandbox Code Playgroud)

我想创建一个python字典:

{ 'One', [0,1,6], 'Two':[4,5], 'Three':[8], 'Nine':[9] }
Run Code Online (Sandbox Code Playgroud)

如何通过列表理解来做到这一点?我尝试使用属于相同字符串值的数字创建列表,但我不知道如何在列表解析中即时创建列表.

Ble*_*der 6

只需使用常规for循环:

from collections import defaultdict

d = defaultdict(list)

for key, value in your_list:
    d[key].append(value)
Run Code Online (Sandbox Code Playgroud)