Tom*_*wik 3 python nested tuples list
我想使用Python将元组列表转换为嵌套列表.我怎么做?
我有一个排序的元组列表(按第二个值排序):
[(1, 5), (5, 4), (13, 3), (4, 3), (3, 2), (14, 1), (12, 1),
(10, 1), (9, 1), (8, 1), (7, 1), (6, 1), (2, 1)]
Run Code Online (Sandbox Code Playgroud)
现在我希望它有这样的(第二个值被忽略并嵌套在列表中):
[ [1], [5], [13, 4], [3], [14, 12, 10, 9, 8, 7, 6, 2] ]
Run Code Online (Sandbox Code Playgroud)
我在这里见过其他线程map用于此类事情,但我并不完全理解它.任何人都可以提供有关'正确'python方式的见解吗?
Rob*_*let 11
from operator import itemgetter
from itertools import groupby
lst = [(1, 5), (5, 4), (13, 3), (4, 3), (3, 2), (14, 1),
(12, 1), (10, 1), (9, 1), (8, 1), (7, 1), (6, 1), (2, 1)]
result = [[x for x, y in group]
for key, group in groupby(lst, key=itemgetter(1))]
Run Code Online (Sandbox Code Playgroud)
groupby(lst, key=itemgetter(1))生成连续元素组,lst其中所有元素具有相同的第1个(从零开始计数)项.在[x for x, y in group]保持每个组内的每个元素的第0项.