小编典典

python中的%timeit是什么?

python

我总是像这样阅读代码来计算时间:

%timeit function()

您能在这里解释什么是“%”吗?

我认为,“%”总是用于替换字符串中的某些内容,例如%s表示替换字符串,%d替换数据,但是我不知道这种情况。


阅读 1540

收藏
2020-12-20

共1个答案

小编典典

%timeitipython的魔术函数,可用于计时特定代码段(单个执行语句或单个方法)。

从文档:

%timeit

Time execution of a Python statement or expression

Usage, in line mode:
    %timeit [-n<N> -r<R> [-t|-c] -q -p<P> -o] statement

要使用它,例如,如果我们想确定using是否xrange比using更快range,则只需执行以下操作:

In [1]: %timeit for _ in range(1000): True
10000 loops, best of 3: 37.8 µs per loop

In [2]: %timeit for _ in xrange(1000): True
10000 loops, best of 3: 29.6 µs per loop

您将获得他们的时间安排。

主要优点%timeit是:

  • 不必timeit.timeit 从标准库中导入代码,也可以多次运行代码以找出哪种方法更好。

  • %timeit将基于总共2秒的执行窗口自动计算代码所需的运行次数。

  • 您还可以使用当前的控制台变量,而无需传递整个代码片段,以防timeit.timeit构建在另一个可以正常工作的环境中构建的变量。

2020-12-20