擅长:python、mysql、java
<p>您可以像这样使用<code>Counter</code></p>
<pre><code>from collections import Counter
alist=[1,1,1,2,2,3,4,2,2,3,2,2,1]
print Counter(alist)
</code></pre>
<p>如果你想使用你的解决方案,你可以这样改进它</p>
^{pr2}$
<p>更好的是,您可以像这样使用<code>defaultdict</code></p>
<pre><code>from collections import defaultdict
adic = defaultdict(int)
for i in alist:
adic[i] += 1
return adic
</code></pre>
<p>另外,您可能需要了解不同Python对象上的各种操作的时间复杂性<a href="http://wiki.python.org/moin/TimeComplexity" rel="noreferrer">here</a></p>