【发布时间】:2021-01-07 14:28:12
【问题描述】:
我一直在阅读,我认为我想要实现的正确解决方案是字典......
我一直在玩并查看示例,它们似乎是要走的路。我有一个问题。虽然我可以毫无问题地创建键并设置其值,但我无法向现有键添加值。
这是我正在尝试的
dict = {}
...
if key not in dict:
dict[key] = value
else:
dict[key].append(value)
它给了我...
AttributeError: 'str' object has no attribute 'append'
如果我使用打印,if else 语句会正确触发。 如果密钥不存在,则添加该密钥。 错误只发生在追加行。
我期望的是每个键的值列表。
谢谢, 克里斯
【问题讨论】:
-
当 dict 值已经是列表时,您可以这样做。考虑使用 defaultdict(list)。或者您可以在初始分配中完成 dict[key] = [value,]。
-
只需将您的初始设置更改为“dict[key] = [value]”
标签: python dictionary append