如何检查词典中的值是否相同?蟒

时间:2015-07-25 14:03:12

标签: python dictionary tuples

我有一本字典:

d={'name':(values), (values), (values), 'name2':(values),(values), ...ecc}

因此值是元组。 我想检查一些与值相关的元组是否相同。

1 个答案:

答案 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)]}