给定两个字典A 和B
如果A中的key也在B中,且该key在A中的value-在B中的value大于0,则将该key和该value差值加入到一个新字典中,以此类推
如果key仅在A中有,则将该key和对应的value加到该字典中。最后返回这个新字典
比如,如果A={'d': 3, 'e': 1, 'z': 1, 's': 1, 'i': 1, 'r': 1, 'a': 2, 'n': 1, 't': 1},
B={'e': 2, 'x': 1, 'g': 1, 's': 1, 'p': 1, 'i': 1, 't': 1, 'a': 2, 'n': 1, 'r': 1})
新字典应={'z': 1, 'd': 3}
再比如,如果A = {'s': 4, 'm': 1, 'p': 2, 'i': 4},B = {'e': 1, 's': 3, 'm': 1, 'p': 1, 'i': 2, 't': 1},
新字典={'s' : 1, 'p' : 1, 'i' : 2} 需要注意A['m'] - B['m'] == 0因此不加入新字典
我的思路如下,先建一个空字典,在A字典遍历,如果A里的key也在B里,则用key A value-key B value并生成一个变量n,如果变量>0,则将key和n更新到空字典, 否则,将key A和key A value 更新到空字典,最后返回该字典
然而当我输入 count_dict_difference({'d': 3, 'e': 1, 'z': 1, 's': 1, 'i': 1, 'r': 1, 'a': 2, 'n': 1, 't': 1}, {'e': 2, 'x': 1, 'g': 1, 's': 1, 'p': 1, 'i': 1, 't': 1, 'a': 2, 'n': 1, 'r': 1})(即第一个例子时)
python报错并指出如下错误,请问该如何更正呢,多谢!