fork download
  1. #!/usr/bin/env python3.8
  2.  
  3. import timeit
  4.  
  5. def report(label, result):
  6. print("{:40} {:<8}".format(label, result))
  7.  
  8. N = 1000
  9. print(N)
  10.  
  11. # 初回実行時
  12. t0 = timeit.repeat("s.insert(0, 10)", "s = []", repeat=N, number=1)
  13. report("insert 1000 times to an empty list", sum(t0))
  14. print()
  15.  
  16. # 2回目実行時
  17. t1 = timeit.repeat("s.insert(0, 10)", "s = [0]*1000", repeat=N, number=1)
  18. report("insert 1000 times to a list[1000]", sum(t1))
  19.  
  20. t1init = timeit.repeat("pass", "s = [0]*1000", repeat=N, number=1)
  21. report("initialize list[1000]", sum(t1init))
  22. print()
  23.  
  24. # 3回目実行時
  25. t2 = timeit.repeat("s.insert(0, 10)", "s = [0]*2000", repeat=N, number=1)
  26. report("insert 1000 times to a list[2000]", sum(t2))
  27.  
  28. t2init = timeit.repeat("pass", "s = [0]*2000", repeat=N, number=1)
  29. report("initialize list[2000]", sum(t2init))
  30. print()
  31.  
  32. # 4回目実行時
  33. t3 = timeit.repeat("s.insert(0, 10)", "s = [0]*3000", repeat=N, number=1)
  34. report("insert 1000 times to a list[3000]", sum(t3))
  35.  
  36. t3init = timeit.repeat("pass", "s = [0]*3000", repeat=N, number=1)
  37. report("initialize list[3000]", sum(t3init))
  38. print()
  39.  
  40. # 5回以上
  41. t4 = timeit.repeat("s.insert(0, 10)", "s = [0]*10000", repeat=N, number=1)
  42. report("insert 1000 times to a list[10000]", sum(t4))
  43.  
  44. t4init = timeit.repeat("pass", "s = [0]*10000", repeat=N, number=1)
  45. report("initialize list[10000]", sum(t4init))
  46. print()
Success #stdin #stdout 0.14s 9792KB
stdin
Standard input is empty
stdout
1000
insert 1000 times to an empty list       0.0004081614315509796

insert 1000 times to a list[1000]        0.0021200738847255707
initialize list[1000]                    0.0002107284963130951

insert 1000 times to a list[2000]        0.0026956461369991302
initialize list[2000]                    0.00023984909057617188

insert 1000 times to a list[3000]        0.00329039990901947
initialize list[3000]                    9.476020932197571e-05

insert 1000 times to a list[10000]       0.007675476372241974
initialize list[10000]                   8.288398385047913e-05