dictionary - 如果满足条件,则在我的字典中添加一个键
问题描述
我有一个非常简单的字典,包含三个项目。如果满足条件,我想遍历字典并在其中添加一个新项目。在这种情况下,如果弹出“绿色”键。我已经尝试了一段时间,似乎无法弄清楚。我不断收到“RuntimeError:迭代期间字典更改大小”
我的代码:
color_dict = {"red" : "color", "green" : "color" , "three" : "not color"}
for i in color_dict:
if i == "green":
color_dict.update({"blue" : "color"})
我是初学者,所以我可能不知道更高级的方法。有人可以帮我解决一个简单的问题吗?我觉得我错过了一些小而重要的东西。
解决方案
替换此行
color_dict.update({"blue" : "color"})
使用以下行
color_dict['blue'] = 'color'
它在此更改后起作用。
至于为什么您的代码可能不起作用,这是因为update()
字典的方法只能更新字典中已经存在的键的值。例如,您可以更新 的值three
:
color_dict.update({"three" : "color"})
输出 :
>>> color_dict
{'red': 'color', 'green': 'color', 'three': 'not color', 'blue': 'color'}
推荐阅读
- java - 如何为 libGDX 设置 JAVA_HOME?
- spring-boot - 如何使用 spring-data-solr 为 solr 添加基本身份验证?
- node.js - 调用 Node.js 依赖项抱怨承诺的意外令牌
- python - 如果某个单元格包含python的“0”,有没有办法在excel中删除一行?
- c# - C# 列表未由对象填充
- javascript - 如何为 Firebase 中的数组类型文档项分配时间戳
- reactjs - “匹配器”类型上不存在属性“toBeInTheDocument”
' - python-3.x - AWS Glue Python Shell 脚本超时
- python - 跨不同文件训练网络时,每个循环的计算时间都会增加
- firemonkey - iOS 上的 StringReplace 行为