回答此问题可获得 20 贡献值,回答如果被采纳可获得 50 分。
<p>我有两张单子:</p>
<pre><code>alist = [11,12,13,11,15]
blist = ['A', 'A', 'B', 'A', 'B']
</code></pre>
<p>我想制作一个字典,其中blist中的项是键,alist中的项是值,列表对应于两个列表中的索引:</p>
<p>结果应该是:</p>
<pre><code>{'A': [11, 12, 11], 'B': [13, 15]}
</code></pre>
<p>我试过这个:</p>
<pre><code>dictNames = {}
for i in xrange(len(alist)):
for letter in blist:
if letter not in dictNames:
dictNames[letter] = []
else:
dictNames[letter].append(alist[i])
</code></pre>
<p>结果是:</p>
<pre><code>{'A': [11, 11, 12, 12, 12, 13, 13, 13, 11, 11, 11, 15, 15, 15], 'B': [11, 12, 12, 13, 13, 11, 11, 15, 15]}
</code></pre>
<p>为什么它不附加到字典中已经存在的字母上,而不是在字典中已经存在的字母上添加?你知道吗</p>