如何将多个值添加到字典键?

新手上路,请多包涵

我想将多个值添加到 python 字典中的特定键。我怎样才能做到这一点?

 a = {}
a["abc"] = 1
a["abc"] = 2

这会将 a["abc"] 的值从 1 替换为 2

我想要的是 a["abc"] 具有多个值( 12 )。

原文由 PythonEnthusiast 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 778
1 个回答

将值设为列表,例如

a["abc"] = [1, 2, "bob"]

更新:

有几种方法可以将值添加到键中,并创建一个列表(如果列表不存在)。我将逐步展示一种这样的方法。

 key = "somekey"
a.setdefault(key, [])
a[key].append(1)

结果:

 >>> a
{'somekey': [1]}

接下来,尝试:

 key = "somekey"
a.setdefault(key, [])
a[key].append(2)

结果:

 >>> a
{'somekey': [1, 2]}

setdefault 的神奇之处在于, 如果 未定义该键,它会初始化该键的值。现在,注意到 setdefault 返回值,您可以将它们组合成一行:

 a.setdefault("somekey", []).append("bob")

结果:

 >>> a
{'somekey': [1, 2, 'bob']}

您应该查看 dict 方法,特别是 get() 方法,并做一些实验来熟悉它。

原文由 President James K. Polk 发布,翻译遵循 CC BY-SA 4.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题