【发布时间】:2017-02-17 17:12:31
【问题描述】:
最简单的比较方式是什么:
dict1 = {'Class1': 10, 'Class2': 18, 'Class3': 5}
dict2 = {'Class1': 10, 'Class2': 18, 'Class4': 11}
for key in dict1:
for key2 in dict2:
if key == key2:
self.assertEqual(dict1[key], dict2[key2])
我觉得我做一个嵌套 for 循环来比较所有 dict2 键与 dict1 中的每个键的解决方案效率低下。目标是仅比较 dict1 和 dict2 都具有的键的值。
【问题讨论】:
-
你没有告诉我们你想要的输出是什么。我们是否只比较相等,即你的结果是一个巨大的布尔值(“全相等”),或者布尔值的字典?还是数字差异的字典?还是什么?
-
您的解决方案是什么?你认为这是低效的。
-
对不起,我添加了一个例子来更清楚
-
@JackLiaiea 请不要在您的问题中添加答案。如果您有单独的答案,只需将其作为另一个答案发布(或者更好的 accept 或投票给答案)!
标签: python dictionary for-loop