擅长:python、mysql、java
<p>您声明的词典是按顺序“分配”的。当使用新值重用键时,python interpeter会删除该键的旧值,并用新值替换它。因此,不能将相同的值映射到两个键。不过,defaultdict可以帮助您解决两个关键场景。在这种情况下,使用<code>set</code>获取唯一可识别的密钥并标记重复项。既然如此,哪一个是真实的,哪一个是重复的,完全可以解释了</p>
<p>这里,默认dict的工厂是list,其中的值创建为list</p>
<pre><code>from collections import defaultdict
d=defaultdict(list)
for k,v in l:
d[k].append(v)
dict(d)
{1: [111, 'aaa'], 2: [222, 'bbb'], 3: [333, 'ccc']}
</code></pre>