从python documentation我看到dict有一个更新(…)方法,但它似乎没有异常,我可能不想用新值更新旧字典.例如,当值为None时.
这就是我目前所做的事情:
for key in new_dict.keys():
new_value = new_dict.get(key)
if new_value: old_dict[key] = new_value
有没有更好的方法来使用新词典更新旧词典.
最佳答案
你可以使用类似的东西:
原文链接:https://www.f2er.com/python/439013.htmlold = {1: 'one',2: 'two'}
new = {1: 'newone',2: None,3: 'new'}
old.update( (k,v) for k,v in new.iteritems() if v is not None)
# {1: 'newone',2: 'two',3: 'new'}