Python字典附加到键?

Python字典附加到键?,python,dictionary,append,Python,Dictionary,Append,我一直在做一些阅读,我认为正确的解决办法,我正在努力实现的是一本字典 我一直在玩和看例子,他们似乎是前进的方向。不过我有个问题。虽然我可以创建一个键并设置它的值,但我无法向现有键添加值 这就是我正在尝试的 dict = {} ... if key not in dict: dict[key] = value else: dict[key].append(value) 它给了我 AttributeError: 'str' object has no attribute 'append

我一直在做一些阅读,我认为正确的解决办法,我正在努力实现的是一本字典

我一直在玩和看例子,他们似乎是前进的方向。不过我有个问题。虽然我可以创建一个键并设置它的值,但我无法向现有键添加值

这就是我正在尝试的

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

AttributeError: 'str' object has no attribute 'append'
如果使用打印,if-else语句将正确启动。 如果密钥不存在,则添加该密钥。 错误只发生在追加行上

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

谢谢, 克里斯

如@kenny所述

你所要做的就是

从集合导入defaultdict dic=默认目录列表 如果键不在字典中,它会自动创建一个列表 dic[key]。追加值 正如@kenny所提到的

你所要做的就是

从集合导入defaultdict dic=默认目录列表 如果键不在字典中,它会自动创建一个列表 dic[key]。追加值
我认为您只需要将初始密钥插入一个包含一个元素的列表:

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

dict={}
dict["key"]=[1]
dict["key"].append(2)
dict 

{'key': [1, 2]}

我认为您只需要将初始密钥插入一个包含一个元素的列表:

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

dict={}
dict["key"]=[1]
dict["key"].append(2)
dict 

{'key': [1, 2]}

当dict值已经在列表中时,可以执行此操作。考虑使用Debug命令列表。或者您可以在初始作业中完成dict[key]=[value],只需将初始设置更改为dict[key]=[value]这是否回答了您的问题?当dict值已经在列表中时,可以执行此操作。考虑使用Debug命令列表。或者您可以在初始作业中完成dict[key]=[value],只需将初始设置更改为dict[key]=[value]这是否回答了您的问题?