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

2020-12-02 21:08:34 发布

您现在位置:Python中文网/ 问答频道 /正文

我想向python字典中的特定键添加多个值。我该怎么做?

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

这将替换从1到2的值。

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

2条回答
网友
1楼 ·

怎么样

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

这将导致:

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

这就是你要找的吗?

网友
2楼 ·

将该值列为列表,例如

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()方法,并做一些实验来适应这种情况。

相关问题