首页 > 解决方案 > 从列表中删除相同的项目/元组

问题描述

我正在努力实现以下目标:

我有两个具有相同值的列表。

a = ["A","B","C"]
b = ["A","B","C"]

我想通过交叉创建对,但删除相同的值,如下所示。

OUT = [("A","B"),("A","C"),("B","C")]

有什么简单的解决办法吗?

非常感谢您提前。

标签: pythonlistduplicatestuples

解决方案


首先,您不需要两个列表来对元素进行分组。您可以直接将列表之一传递给itertools.combinations

list(combinations(a, 2))

a你的清单在哪里。

示例

from itertools import combinations

a = ['A','B','C']

print(list(combinations(a, 2)))
# [('A', 'B'), ('A', 'C'), ('B', 'C')]

推荐阅读