首页 > 解决方案 > Python字典追加到键?

问题描述

我一直在阅读,我认为我想要实现的正确解决方案是字典......

我一直在玩并查看示例,它们似乎是要走的路。我有一个问题。虽然我可以毫无问题地创建键并设置其值,但我无法将值添加到现有键。

这是我正在尝试的

dict = {}
...
if key not in dict:
   dict[key] = value
else:
   dict[key].append(value)

它给了我...

AttributeError: 'str' object has no attribute 'append'

如果我使用打印,if else 语句会正确触发。如果密钥不存在,则添加该密钥。该错误仅发生在附加行上。

我期望的是每个键的值列表。

谢谢,克里斯

标签: pythondictionaryappend

解决方案


正如@kenny 所提到的

你所要做的就是

from collections import defaultdict

dic = defaultdict(list)

# it creates a list if the key is not in dictionary automatically
dic[key].append(value)

推荐阅读