fork(1) download
  1. from collections import Counter
  2. from itertools import groupby
  3. from timeit import timeit
  4.  
  5. ar = list(range(10000))
  6.  
  7. print(timeit('Counter(ar)', number=1, globals=globals()))
  8. print(timeit('{val: ar.count(val) for val in ar}', number=1, globals=globals()))
  9. print(timeit('{val: ar.count(val) for val in set(ar)}', number=1, globals=globals()))
  10. print(timeit('{val: sum(1 for _ in group) for val, group in groupby(sorted(ar))}',
  11. number=1, globals=globals()))
Success #stdin #stdout 2.12s 29264KB
stdin
Standard input is empty
stdout
0.0005530156195163727
1.0503493696451187
1.0463058911263943
0.00422721728682518