python - 在 Python 中,如果它等于某个值,我如何循环遍历字典并更改值?

标签 python dictionary

如果值为None,我想将其更改为“”(空字符串)。

我是这样开始的,但我忘记了:

for k, v in mydict.items():
    if v is None:
... right?

最佳答案

for k, v in mydict.iteritems():
    if v is None:
        mydict[k] = ''

在更一般的情况下,例如如果您要添加或删除键,则更改正在循环的容器的结构可能不安全——因此使用 items 在其独立列表副本上循环可能是谨慎的——但是在给定的现有索引处分配不同的值确实不会产生任何问题,因此,在 Python 2.any 中,最好使用 iteritems

Python3 但是代码给出了 AttributeError: 'dict' object has no attribute 'iteritems' 错误。在这里使用 items() 而不是 iteritems()

请参阅 this post.

关于python - 在 Python 中,如果它等于某个值,我如何循环遍历字典并更改值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2315520/

相关文章:

javascript - 数组 'map' 与 'forEach' - 函数式编程

java - Map<String, String>,如何同时打印 "key string"和 "value string"

python - lxml 基本上什么都没有

python - pycapture2 视频捕获和线程

Python 从另一个线程启动/停止线程会导致意外行为

android - 离线 map 包含在 .apk 文件中

sorting - 是否可以在 Julia 中对字典进行排序?

performance - Map<string, MyObject> 和 {[index : string]: MyObject} in TypeScript? 有什么区别

python - 对 0D 和 1D numpy 数组使用数组索引的统一方式

python - 使用 Transmogrifier 在 Plone 中上传内容时出现未经授权的异常