循环提速,使用repeat替代range
from timeit import timeit
from itertools import repeat
def for_range():
for _ in range(1_000_000)
pass
def for_repeat():
for _ in repeat(None,1_000_000)
pass
range_timeit = timeit(for_range,number=100)
repeat_timeit = timeit(for_repeat,number=100)
print(f"{range_timeit = :.3f}s,\n{repeat_timeit = :.3f}s")
#range_timeit = 0.764s,
#repeat_timeit = 0.400s
- 通过输出的结果可以看出,使用repeat的运行时间比range省了一半: range_timeit = 0.764s, repeat_timeit = 0.400s