您可以使用
Counter这样的
from collections import Counteralist=[1,1,1,2,2,3,4,2,2,3,2,2,1]print Counter(alist)
如果您想使用自己的解决方案,可以像这样改善它
def icount(alist): adic = {} for i in alist: adic[i] = adic.get(i, 0) + 1 return adic更好的是,您可以
defaultdict像这样使用
from collections import defaultdictadic = defaultdict(int)for i in alist: adic[i] += 1return adic
另外,您可能想在这里查看对不同Python对象进行的各种操作的时间复杂度



