dict没有提供直接求交集和差集的方法,可以通过set进行求值:
def dict_find_same_set(dict1, dict2):
dict1_set = set(dict1.items())
dict2_set = set(dict2.items())
same_set = dict1_set & dict2_set
return same_set
def dict_find_diff_set(dict1, dict2):
dict1_set = set(dict1.items())
dict2_set = set(dict2.items())
same_set = dict1_set & dict2_set
return (dict1_set - same_set, dict2_set - same_set)
def dict_filter_out_key_in_set(ori_dict, filter_set):
filter_dict = { }
for item in filter_set:
key = item[0]
filter_dict[key] = ori_dict[key]
return filter_dict
def main():
d1 = {
"a":1,
"b":2,
"c":3
}
d2 = {
"b":2,
"c":3,
"d":4
}
same_set = dict_find_same_set(d1, d2)
same_dict = dict_filter_out_key_in_set(d1