【发布时间】:2019-01-21 09:01:09
【问题描述】:
我想比较两个特定的词典:
dict1 = {"person1": {
"name": "toto",
"age": 24
},
"person2": {
"name": "titi",
"age": 24}
}
dict2 = {"person2": {
"name": "tata",
"age": 22
},
"person3": {
"name": "tete",
"age": 25}
}
我想比较两者之间的区别: - person1,person2 (dict1) 和 person2, person3 (dict2) - 如果person2相同,比较name和age是否相同
我已经比较了第一个键,但第二个键值没有。
dict1 是真正的字典:
def not_matches(dict_one, dict_two):
dict_one = set(dict_one)
dict_two = set(dict_two)
ldel, ladd = list(dict_two - dict_one), list(dict_one - dict_two)
return ldel, ladd
list_delete = list()
list_add = list()
list_delete, list_add = not_matches(dict1, dict2)
print(list_delete)
print(list_add)
['person3']
['person1']
【问题讨论】:
-
人的顺序重要吗?
-
您能否也向我们展示您的代码,以便我们找出什么不起作用?由于您已经比较了第一个键,因此您走在了正确的轨道上。
-
这不是定义字典的正确语法。你需要
{}围绕整个字典。 -
我更新了帖子:)
标签: python list dictionary compare