fork(1) download
  1. from itertools import chain
  2. from timeit import timeit
  3.  
  4. var ='sans'
  5.  
  6. res = [var[:i] +' '+ var[i:] for i in range(len(var))]
  7.  
  8. def RoadRunner():
  9. return list(chain.from_iterable(map(str.split, res)))
  10.  
  11. def StefanPochmann():
  12. return [s for r in res for s in r.split()]
  13.  
  14. def pault():
  15. return " ".join(res).split()
  16.  
  17. def Dekel():
  18. return [x for y in [res[i].split() for i in range (len(res))] for x in y]
  19.  
  20. n = 10000
  21. print("RoadRunner time:", timeit(RoadRunner, number = n))
  22. print(RoadRunner())
  23. print()
  24.  
  25. print("StefanPochmann time:", timeit(StefanPochmann, number = n))
  26. print(StefanPochmann())
  27. print()
  28.  
  29. print("pault time:", timeit(pault, number = n))
  30. print(pault())
  31. print()
  32.  
  33. print("Dekel time:", timeit(Dekel, number = n))
  34. print(Dekel())
  35. print()
  36.  
Success #stdin #stdout 0.13s 9612KB
stdin
Standard input is empty
stdout
RoadRunner time: 0.027711997739970684
['sans', 's', 'ans', 'sa', 'ns', 'san', 's']

StefanPochmann time: 0.0212768716737628
['sans', 's', 'ans', 'sa', 'ns', 'san', 's']

pault time: 0.007157155312597752
['sans', 's', 'ans', 'sa', 'ns', 'san', 's']

Dekel time: 0.029919116757810116
['sans', 's', 'ans', 'sa', 'ns', 'san', 's']