为什么python的timeit使用"3个最佳"来衡量经过的时间?



我看不出python的timeit模块使用best of 3测量时间的基本原理。下面是我控制台上的一个例子:

~ python -m timeit 'sum(range(10000))'
10000 loops, best of 3: 119 usec per loop

直觉上,我会把整个时间放在一起,然后除以循环的数量。在所有循环中选择三局三胜制的直觉是什么?这似乎有点不公平。

如文档中所述:

default_timer()测量可能会受到同一台机器上运行的其他程序的影响,因此当需要精确计时时,最好的做法是重复计时几次并使用最佳时间。-r选项对此很好;在大多数情况下,3次重复的默认值可能就足够了。

相关内容

  • 没有找到相关文章

最新更新