fork download
  1. import timeit
  2. import numpy as np
  3.  
  4. def m0():
  5. for n in l1:
  6. ...
  7.  
  8. def m1():
  9. for n in l1[::-1]:
  10. ...
  11.  
  12. def m2():
  13. for n in reversed(l1):
  14. ...
  15.  
  16. n1=200000
  17. n2=100
  18. a=[x*x%1230 for x in range(n1)]
  19. l1 = list(a)
  20. print('\n list')
  21. print('normal ',timeit.timeit(m0, number=n2))
  22. print('[::-1] ',timeit.timeit(m1, number=n2))
  23. print('reversed',timeit.timeit(m2, number=n2))
  24.  
  25. l1 = tuple(a)
  26. print('\n tuple')
  27. print('normal ',timeit.timeit(m0, number=n2))
  28. print('[::-1] ',timeit.timeit(m1, number=n2))
  29. print('reversed',timeit.timeit(m2, number=n2))
  30.  
  31. l1 = np.array(a)
  32. print('\n np.array')
  33. print('normal ',timeit.timeit(m0, number=n2))
  34. print('[::-1] ',timeit.timeit(m1, number=n2))
  35. print('reversed',timeit.timeit(m2, number=n2))
  36.  
Success #stdin #stdout 3.73s 36524KB
stdin
Standard input is empty
stdout
  list
normal   0.1346164010465145
[::-1]   0.2854367457330227
reversed 0.13259873539209366

  tuple
normal   0.122944425791502
[::-1]   0.21440982818603516
reversed 0.22547966614365578

  np.array
normal   0.7709440216422081
[::-1]   0.8276452943682671
reversed 0.7721371948719025