我正在使用 Odoo,我想在不使用任何库的情况下对两个词典进行比较。此比较应返回具有差异的字典。这是我的两本词典:
list1 = {
'Office Furniture':
[
{
'name': 'Office chairs can harm your floor: protect it.',
'qty': 3
},
]
}
list2 = {
'Office Furniture':
[
{
'name': 'Office chairs can harm your floor: protect it.',
'qty': 3
},
{
'name': '160x80cm, with large legs.',
'qty': 1
}
],
'Services':
[
{
'name': 'designing',
'qty': 1
}
]
}
我想在没有任何图书馆的情况下获得这两个词典之间的差异,如下所示:
differences = {
'Office Furniture':
[
{
'name': '160x80cm, with large legs.',
'qty': 1
}
],
'Services':
[
{
'name': 'designing',
'qty': 1
}
]
}
非常感谢您的帮助!
def compare_dictionaries(dict1, dict2):
diff_dict = {}
for key in dict1.keys():
if key not in dict2:
diff_dict[key] = (dict1[key], None)
elif dict1[key] != dict2[key]:
diff_dict[key] = (dict1[key], dict2[key])
for key in dict2.keys():
if key not in dict1:
diff_dict[key] = (None, dict2[key])
return diff_dict
可能你需要重命名你的听写)