可以使用Python内置的字典方法来比较两个字典,并打印出缺失或不匹配的部分。下面是一个示例代码:
def compare_dicts(dict1, dict2):
missing_keys = set(dict1.keys()) - set(dict2.keys())
mismatched_values = {key: (dict1[key], dict2[key]) for key in dict1.keys() & dict2.keys() if dict1[key] != dict2[key]}
if missing_keys:
print("Missing keys in dict2:", missing_keys)
if mismatched_values:
print("Mismatched values between dict1 and dict2:")
for key, values in mismatched_values.items():
print(key, ":", values[0], "->", values[1])
# 例子
dict1 = {"a": 1, "b": 2, "c": 3}
dict2 = {"a": 1, "b": 3, "d": 4}
compare_dicts(dict1, dict2)
输出结果为:
Missing keys in dict2: {'c'}
Mismatched values between dict1 and dict2:
b : 2 -> 3
这个例子中,我们比较了dict1
和dict2
两个字典。首先使用集合操作符-
找到在dict2
中缺失的键,然后使用字典推导式找到在两个字典中同时存在但值不相等的键值对。最后,根据情况打印出缺失的键和不匹配的键值对。
上一篇:比较两个字典并打印差异
下一篇:比较两个字典并返回缺失的值