比较两个默认词典 Python
Compare two defaultdictionaries Python
有没有比双循环更有效的方法来比较两个字典?
for i in d:
for i2 in d2:
if i == i2:
key1 = d.get(i)
key2 = d2.get(i2)
print("First key:", key1)
print("Second key:", key2)
您可以使用dictionary views得到键的交集。它们作为集合运行,这意味着您可以生成它们与 &
.
的交集
Python 2:
for key in d.viewkeys() & d2.viewkeys():
value1 = d[key]
value2 = d2[key]
Python 3:
for key in d.keys() & d2.keys():
value1 = d[key]
value2 = d2[key]
即使您没有字典视图,也不需要使用双循环。您需要做的就是测试密钥是否存在:
for key in d:
if key in d2:
value1 = d[key]
value2 = d2[key]
有没有比双循环更有效的方法来比较两个字典?
for i in d:
for i2 in d2:
if i == i2:
key1 = d.get(i)
key2 = d2.get(i2)
print("First key:", key1)
print("Second key:", key2)
您可以使用dictionary views得到键的交集。它们作为集合运行,这意味着您可以生成它们与 &
.
Python 2:
for key in d.viewkeys() & d2.viewkeys():
value1 = d[key]
value2 = d2[key]
Python 3:
for key in d.keys() & d2.keys():
value1 = d[key]
value2 = d2[key]
即使您没有字典视图,也不需要使用双循环。您需要做的就是测试密钥是否存在:
for key in d:
if key in d2:
value1 = d[key]
value2 = d2[key]