我想将多个值添加到python字典中的特定键。我怎样才能做到这一点?
a = {}
a["abc"] = 1
a["abc"] = 2
这会将a [“ abc”]的值从1替换为2。
我想要的是a [“ abc”]具有多个值(1和2)。
Answers:
将值设为列表,例如
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()
方法,并做一些实验以使自己满意。
怎么样
a["abc"] = [1, 2]
这将导致:
>>> a
{'abc': [1, 2]}
那是您要找的东西吗?
{"abc": 1, 2}
因为dict是一个key:value对,每个键只有一个值。