来自 python documentation我看到 dict
有一个 update(...)
方法,但它似乎没有异常(exception),我可能不想用新值更新旧字典.例如,当值为 None
时。
这是我目前所做的:
for key in new_dict.keys():
new_value = new_dict.get(key)
if new_value: old_dict[key] = new_value
有没有更好的方法用新字典更新旧字典。
最佳答案
你可以使用类似的东西:
old = {1: 'one', 2: 'two'}
new = {1: 'newone', 2: None, 3: 'new'}
old.update( (k,v) for k,v in new.items() if v is not None)
# {1: 'newone', 2: 'two', 3: 'new'}
关于python - 用另一个字典更新一个字典,但只有非 None 值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15277307/