给定输入:
[('is','my','order'), ('my','order', 'is'), ('temp', 'ques'), ('ques','temp')]
期望输出:
[('is','my','order'), ('temp', 'ques')]
在输出中,元组的顺序或元组内容的顺序并不重要。
给定输入:
[('is','my','order'), ('my','order', 'is'), ('temp', 'ques'), ('ques','temp')]
期望输出:
[('is','my','order'), ('temp', 'ques')]
由于您不关心顺序,您可以使用 set
来实现:
>>> input_list = [('is','my','order'), ('my','order', 'is'), ('temp', 'ques'), ('ques','temp')]
>>> set(tuple(sorted(l)) for l in input_list)
set([('ques', 'temp'), ('is', 'my', 'order')])
tuple
,因为sorted
返回的是不可哈希的list
。 最后,set
会删除元组中重复的条目。你可以对每个子列表进行排序,然后将它们添加到一个列表中,去除所有重复项。
output_list = []
for tup in map(sorted, tuple_list):
if tup not in output_list:
output_list.append(tup)
print(output_list)
mytuples = [('one','two'), ('two','one)]
myset=set()
for x in mytuples:
myset.update(x)
print(myset)
output {'two', 'one'}
这将为您提供数据集中所有唯一值的集合。或许不是很有用。
因此,假设您想保留元组结构,您可能需要检查每个长度相同的元组与其他每个元组进行比较。