如何比较python字典中的项

如何比较python字典中的项,python,dictionary,Python,Dictionary,假设我在字典中有一本字典,如下所示: Allusers={ User1: {'Film1': Vote1, 'Film2': Vote2} User2: {'Film1': Vote1, 'Film2'; Vote2} ... } 我需要逻辑/算法/公式来将每个人与其他人进行一次比较。 我需要如何处理这个问题? 多谢各位 类似于: from itertools import combinations Allusers={ 'User1': {'Film1': 'Vote1', 'F

假设我在字典中有一本字典,如下所示:

Allusers={
User1: {'Film1': Vote1, 'Film2': Vote2}
User2: {'Film1': Vote1, 'Film2'; Vote2}
...

}
我需要逻辑/算法/公式来将每个人与其他人进行一次比较。 我需要如何处理这个问题? 多谢各位

类似于:

from itertools import combinations

Allusers={
    'User1': {'Film1': 'Vote1', 'Film2': 'Vote2'},
    'User2': {'Film1': 'Vote1', 'Film2': 'Vote2'}
}

for comb in combinations(Allusers, 2):
    if Allusers[comb[0]] == Allusers[comb[1]]:
        print '{0} is same with {1}'.format(comb[0], comb[1])
users={
User1: {'Film1': Vote1, 'Film2': Vote2}
User2: {'Film1': Vote1, 'Film2'; Vote2}
User3: {'Film1': Vote1, 'Film2'; Vote2}
User4: {'Film1': Vote1, 'Film2'; Vote2}
}
keys=list(users)
for i,x in enumerate(keys):
    for y in keys[i+1:]:
        #compare users[x] and users[y] here

这里,在第一个循环中,
User1
将与用户
2,3,4
进行比较,在下一个循环中,
User2
将与用户3,4进行比较,因为他在第一个循环中已经与
User1
进行比较。

定义“比较”。你在寻找什么?@MartijnPieters:我认为对于这个问题来说,比较是无关紧要的。@Martijn Pieters:你说得对,代码更改了。谢谢,我认为这就是我要寻找的。@user413734:组合解决方案比这个解决方案更具可读性和内存效率。