加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > Python > 正文

python – 使用另一个字典更新字典,但只能使用非None值

发布时间:2020-12-17 00:51:56 所属栏目:Python 来源:网络整理
导读:从python documentation我看到dict有一个更新()方法,但它似乎没有异常,我可能不想用新值更新旧字典.例如,当值为None时. 这就是我目前所做的事情: for key in new_dict.keys(): new_value = new_dict.get(key) if new_value: old_dict[key] = new_value 有没

从python documentation我看到dict有一个更新(…)方法,但它似乎没有异常,我可能不想用新值更新旧字典.例如,当值为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.iteritems() if v is not None)

# {1: 'newone',2: 'two',3: 'new'}

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读