O que eu costumo fazer é usar clock()
ou time()
da time
biblioteca. clock
mede o tempo do intérprete, enquanto time
mede o tempo do sistema. Advertências adicionais podem ser encontradas nos documentos .
Por exemplo,
def fn():
st = time()
dostuff()
print 'fn took %.2f seconds' % (time() - st)
Ou, alternativamente, você pode usar timeit
. Costumo usar a time
abordagem devido à rapidez com que posso divulgá-la, mas se você estiver cronometrando um trecho de código isolado, será timeit
útil.
Desde o momento em que documentos ,
def test():
"Stupid test function"
L = []
for i in range(100):
L.append(i)
if __name__=='__main__':
from timeit import Timer
t = Timer("test()", "from __main__ import test")
print t.timeit()
Em seguida, converter para minutos, você pode simplesmente dividir por 60. Se você deseja que o tempo de execução de script em um formato de fácil leitura, se é segundos ou dias, você pode converter para um timedelta
e str
-lo:
runtime = time() - st
print 'runtime:', timedelta(seconds=runtime)
e isso imprimirá algo do formulário [D day[s], ][H]H:MM:SS[.UUUUUU]
. Você pode conferir os documentos da timedelta .
E, finalmente, se o que você realmente procura é criar um perfil do seu código, o Python também disponibiliza a biblioteca de perfis .