如何在python中向字典键添加多个值?

时间:2013-12-14 17:06:27

标签: python dictionary key

我想在python词典中为特定键添加多个值。我怎么能这样做?

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

这会将[“abc”]的值从1替换为2.

我想要的是[[abc“]有多个值(1和2)。

2 个答案:

答案 0 :(得分:110)

将值设为列表,例如

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

更新:

有几种方法可以为key添加值,并创建一个列表(如果尚未存在的话)。我将在几步之内展示一种这样的方法。

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()方法,并进行一些实验以熟悉此方法。

答案 1 :(得分:16)

怎么样

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

这将导致:

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

那是你在找什么?

相关问题