Python有一个称为defaultdict的函数,该函数按其第一个元素对Python元组元素进行分组。
lst = [ (1, 'Hello', 'World', 112), (2, 'Hello', 'People', 42), (2, 'Hi', 'World', 200) ]
从集合导入defaultdict
d = defaultdict(list) for k, *v in lst: d[k].append(v) print(d)
输出结果
这将给出输出
defaultdict(<class 'list'>, {1: [['Hello', 'World', 112]], 2: [['Hello', 'People', 42], ['Hi', 'World', 200]]})
您可以使用tuple(d.items())方法将其转换回元组,同时保持分组。
print(tuple(d.items()))
输出结果
这将给出输出
((1, [['Hello', 'World', 112]]), (2, [['Hello', 'People', 42], ['Hi', 'World', 200]]))