我有一本字典:
d={'name':(values), (values), (values), 'name2':(values),(values), ...ecc}
因此值是元组。 我想检查一些与值相关的元组是否相同。
答案 0 :(得分:-2)
你如何定义“相同”? (1, 2)
应该与(2, 1)
“相同”吗?
如果(1, 2)
与(2, 1)
不“相同”,您只需迭代这些值并检查它们是否与==
运算符相同。
如果(1, 2)
与(2, 1)
“相同”,您可以对它们进行排序(或者只是将它们变成set
),然后按照上面的相同步骤进行排序。
编辑:由于您澄清了您想要的第一个行为,您可以创建一个包含字典理解的新字典(假设您使用的是Python 2.7或更高版本)并将每个元组列表转换为一个集合元组:
d = {'a': [(1,1), (1,1), (1,2)], 'b': [(3,3), (2,5), (3,3)]}
new_d = { k:list(set(v)) for k,v in d.iteritems() }
>> {'a': [(1, 2), (1, 1)], 'b': [(2, 5), (3, 3)]}