例如,我有:
dic={'a': 1, 'b': 2, 'c': 3}
现在,我希望将另一个'c':4
添加到词典中。它会覆盖现有的'c':3
。
我怎样才能得到dic
:
dic={'a': 1, 'b': 2, 'c': 3, 'c':4}
答案 0 :(得分:3)
字典键必须是唯一的。但是您可以将列表作为值,以便可以在其中存储多个值。这可以通过使用collections.defaultdict
来完成,如下所示。
(从IPython会话复制的示例。)
In [1]: from collections import defaultdict
In [2]: d = defaultdict(list)
In [3]: d['a'].append(1)
In [4]: d['b'].append(2)
In [5]: d['c'].append(3)
In [6]: d['c'].append(4)
In [7]: d
Out[7]: defaultdict(list, {'a': [1], 'b': [2], 'c': [3, 4]})
答案 1 :(得分:0)
您不能在单个词典中包含重复的键 - 当您尝试查找某些内容时,您会期望什么行为?但是,您可以将列表与键关联以存储多个对象。字典结构中的这一小变化将允许{'c' : [3, 4]}
,最终实现您正在寻找的行为。