一尘不染

有没有比较字典值的更好方法

python

我目前正在使用以下功能比较字典值。有更快或更更好的方法吗?

match = True
for keys in dict1:
    if dict1[keys] != dict2[keys]:
        match = False
        print keys
        print dict1[keys],
        print  '->' ,
        print dict2[keys]

编辑:两个字典包含相同的键。


阅读 132

收藏
2020-12-20

共1个答案

一尘不染

如果字典具有相同的键集,并且您需要所有这些打印件以实现任何值差异,那么您将无能为力。也许像这样:

diffkeys = [k for k in dict1 if dict1[k] != dict2[k]]
for k in diffkeys:
  print k, ':', dict1[k], '->', dict2[k]

几乎等同于您所拥有的,但是您可能会得到更好的演示,例如在循环使用diffkey之前对其进行排序。

2020-12-20