比较python

时间:2017-09-23 17:26:47

标签: python dictionary

我有两本词典

aDict = {'a': {'shape': 'square', 'size': 'large', 'color': 'red'}}
bDict = {'b': {'shape': 'circle', 'size': 'large', 'color': 'red'}}

我想计算两个字典中不同的值(即'shape':在这个例子中为'circle')。我怎样才能做到这一点?我试图将dicts转换成一组,但是要做

 set(aDict)

只给我钥匙,我需要使用dicts的值。我该怎么办

set(aDict.values()) - set(bDict.values())

返回'shape':'square'

如果您需要更多说明,请告诉我,谢谢

2 个答案:

答案 0 :(得分:1)

aDict["a"].items() - bDict["b"].items()

从技术上讲,使用^代替-,因为您希望知道另一方是否存在差异。这会为您提供您所寻找的结果。

答案 1 :(得分:0)

以下应该这样做。

for key,item in aDict['a'].items():                #go through aDict
   if aDict['a'][key] != bDict['b'][key]:          #if values are not same
      print(aDict['a'][key] , bDict['b'][key])     #print them