Python 如何使用timeit来计算函数运行所需的时间?
试图计算这段代码运行需要多长时间:Python 如何使用timeit来计算函数运行所需的时间?,python,timer,timeit,Python,Timer,Timeit,试图计算这段代码运行需要多长时间: import timeit as t def fib_recursive(n): if n==0: return 0 elif n == 1: return 1 else: return fib_recursive(n-1) + fib_recursive(n-2) print fib_recursive(29) print t.Timer("fib_recursive(29)")
import timeit as t
def fib_recursive(n):
if n==0:
return 0
elif n == 1:
return 1
else:
return fib_recursive(n-1) + fib_recursive(n-2)
print fib_recursive(29)
print t.Timer("fib_recursive(29)")
结果如下:
import timeit as t
def fib_recursive(n):
if n==0:
return 0
elif n == 1:
return 1
else:
return fib_recursive(n-1) + fib_recursive(n-2)
setup = 'from __main__ import fib_recursive'
t.timeit('fib_recursive(29)', setup=setup)
514229
timeit.0xda28c0处的计时器实例使用:
或者简单地使用:
注意:您需要将import
语句传递给setup
参数。使用:
或者简单地使用:
注意:您需要将import
语句传递给setup
参数。使用:
或者简单地使用:
注意:您需要将import
语句传递给setup
参数。使用:
或者简单地使用:
注意:您需要将
import
语句传递给setup
参数。要展开fourtheye的注释(这是正确的),通常需要将定义函数所需的步骤隔离到timeit
的setup参数中。根据您的设置,我将执行以下操作:
import timeit as t
def fib_recursive(n):
if n==0:
return 0
elif n == 1:
return 1
else:
return fib_recursive(n-1) + fib_recursive(n-2)
setup = 'from __main__ import fib_recursive'
t.timeit('fib_recursive(29)', setup=setup)
我假设您了解改进此算法的各种技术,并选择测量其速度以仅建立基线。您可以尝试将
number
关键字参数设置为timeit
,以控制重复次数。要扩展Fourtheye的注释(这是正确的),通常需要将定义函数所需的步骤分离到timeit
的设置参数中。根据您的设置,我将执行以下操作:
import timeit as t
def fib_recursive(n):
if n==0:
return 0
elif n == 1:
return 1
else:
return fib_recursive(n-1) + fib_recursive(n-2)
setup = 'from __main__ import fib_recursive'
t.timeit('fib_recursive(29)', setup=setup)
我假设您了解改进此算法的各种技术,并选择测量其速度以仅建立基线。您可以尝试将
number
关键字参数设置为timeit
,以控制重复次数。要扩展Fourtheye的注释(这是正确的),通常需要将定义函数所需的步骤分离到timeit
的设置参数中。根据您的设置,我将执行以下操作:
import timeit as t
def fib_recursive(n):
if n==0:
return 0
elif n == 1:
return 1
else:
return fib_recursive(n-1) + fib_recursive(n-2)
setup = 'from __main__ import fib_recursive'
t.timeit('fib_recursive(29)', setup=setup)
我假设您了解改进此算法的各种技术,并选择测量其速度以仅建立基线。您可以尝试将
number
关键字参数设置为timeit
,以控制重复次数。要扩展Fourtheye的注释(这是正确的),通常需要将定义函数所需的步骤分离到timeit
的设置参数中。根据您的设置,我将执行以下操作:
import timeit as t
def fib_recursive(n):
if n==0:
return 0
elif n == 1:
return 1
else:
return fib_recursive(n-1) + fib_recursive(n-2)
setup = 'from __main__ import fib_recursive'
t.timeit('fib_recursive(29)', setup=setup)
我假设您了解改进此算法的各种技术,并选择测量其速度以仅建立基线。您可以使用
number
关键字参数对timeit
进行试验,以控制重复次数。使用IPython时,最简单的计时方法是使用magicfunction%timeit
:
%timeit fib_recursive(10)
>>> 10000 loops, best of 3: 70.2 us per loop
使用IPython时,最简单的计时方法是使用magicfunction
%timeit
:
%timeit fib_recursive(10)
>>> 10000 loops, best of 3: 70.2 us per loop
使用IPython时,最简单的计时方法是使用magicfunction
%timeit
:
%timeit fib_recursive(10)
>>> 10000 loops, best of 3: 70.2 us per loop
使用IPython时,最简单的计时方法是使用magicfunction
%timeit
:
%timeit fib_recursive(10)
>>> 10000 loops, best of 3: 70.2 us per loop
你可以使用函数。你可以使用函数。你可以使用函数。你可以使用函数。