首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >如何迭代和修改字典中的值?

如何迭代和修改字典中的值?
EN

Stack Overflow用户
提问于 2011-02-14 21:33:23
回答 6查看 45.7K关注 0票数 22
records = {'foo':foo, 'bar':bar, 'baz':baz}

如果为None,我希望将值更改为0。我该怎么做呢?

例如:

records = {'foo':None, 'bar':None, 'baz':1}

我想将foobar更改为0。最终判决:

records = {'foo':0, 'bar':0, 'baz':1}
EN

回答 6

Stack Overflow用户

回答已采纳

发布于 2011-02-14 21:53:12

另一种方式

records.update((k, 0) for k,v in records.iteritems() if v is None)

示例

>>> records
{'bar': None, 'baz': 1, 'foo': None}
>>> records.update((k, 0) for k,v in records.iteritems() if v is None)
>>> records
{'bar': 0, 'baz': 1, 'foo': 0}
票数 19
EN

Stack Overflow用户

发布于 2011-02-14 21:40:22

for k in records:
    if records[k] is None:
        records[k] = 0
票数 20
EN

Stack Overflow用户

发布于 2011-02-14 21:35:03

试一试

for key, value in records.iteritems():
    if value is None:
        records[key] = 0
票数 13
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/4992739

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档