使用frozenset将每个组合都转换为不可变的集合,然后对每个集合进行分组。
示例代码:
from collections import defaultdict
data = [
['a', 'b', 1],
['b', 'a', 2],
['c', 'd', 3],
['d', 'c', 4],
['a', 'c', 5],
['c', 'a', 6],
]
groups = defaultdict(list)
for row in data:
key = frozenset([row[0], row[1]])
groups[key].append(row[2])
print(groups)
输出:
defaultdict(, {
frozenset({'a', 'b'}): [1, 2],
frozenset({'d', 'c'}): [3, 4],
frozenset({'a', 'c'}): [5, 6]
})
上一篇:按列对一个二维整数数组进行排序
下一篇:按列而不是按行对值进行排序。