将字典中的每个值与其他值进行比较

时间:2016-03-26 02:32:35

标签: python dictionary

我正在尝试编写一个python代码,将字典中的每个值与其他值进行比较。例如:

dict={key1:[values1],key2:[values2],key3:[values3}.

我想将每个值与其他值进行比较。即value1 value2value1 value3value2 value3

2 个答案:

答案 0 :(得分:1)

这就是你要找的东西吗?

for k in topology:
    for j in topology:
        if k == j:
            continue
        else:
            # compare values at key k and key j
            my_compare_function(topology[k], topology[j])

答案 1 :(得分:0)

您可以使用itertools.combinations创建所有对。这是一个简单的例子:

from itertools import combinations
# create an example dictionary
dict = {"a": 1, "b": 2, "c": 2}
# generate all pairs
all_pairs = list(combinations(dict.items(), r = 2))
# create mapping of comparisons of the values of each pair
{pair:pair[0][1] == pair[1][1] for pair in all_pairs}

输出:

(('c', 2), ('b', 2)): True, (('a', 1), ('b', 2)): False, (('a', 1), ('c', 2)): False}