Python-比较两个字典并检查多少对(key, value)相等
我有两个字典,但为简单起见,我将采用以下两个字典:
>>> x = dict(a=1, b=2)>>> y = dict(a=2, b=2)
现在,我想比较中的每一key
, value
对是否x具有相同的对应值y
。所以我这样写:
>>> for x_values, y_values in zip(x.iteritems(), y.iteritems()): if x_values == y_values:
print 'Ok', x_values, y_values
else:
print 'Not', x_values, y_values
而且它有效,因为tuple返回了a ,然后比较了相等性。
我的问题:
它是否正确?有更好的方法吗?最好不要提速,我是在讲代码优雅。
更新:我忘了提到我必须检查多少key, value
对是相等的。
回答:
如果你想知道两个字典中都匹配多少个值,你应该说:)
也许是这样的:
shared_items = {k: x[k] for k in x if k in y and x[k] == y[k]}print len(shared_items)
以上是 Python-比较两个字典并检查多少对(key, value)相等 的全部内容, 来源链接: utcz.com/qa/434809.html