Sé que es tarde, pero en realidad me gusta mucho usar:
import time
start = time.time()
##### your timed code here ... #####
print "Process time: " + (time.time() - start)
time.time()
te da segundos desde la época. Debido a que este es un tiempo estandarizado en segundos, simplemente puede restar el tiempo de inicio del tiempo de finalización para obtener el tiempo de proceso (en segundos). time.clock()
es bueno para la evaluación comparativa, pero me ha parecido inútil si quieres saber cuánto tiempo llevó tu proceso. Por ejemplo, es mucho más intuitivo decir "mi proceso toma 10 segundos" que decir "mi proceso toma 10 unidades de reloj del procesador"
>>> start = time.time(); sum([each**8.3 for each in range(1,100000)]) ; print (time.time() - start)
3.4001404476250935e+45
0.0637760162354
>>> start = time.clock(); sum([each**8.3 for each in range(1,100000)]) ; print (time.clock() - start)
3.4001404476250935e+45
0.05
En el primer ejemplo anterior, se le muestra un tiempo de 0.05 para time.clock () frente a 0.06377 para time.time ()
>>> start = time.clock(); time.sleep(1) ; print "process time: " + (time.clock() - start)
process time: 0.0
>>> start = time.time(); time.sleep(1) ; print "process time: " + (time.time() - start)
process time: 1.00111794472
En el segundo ejemplo, de alguna manera el tiempo del procesador muestra "0" aunque el proceso durmió por un segundo. time.time()
muestra correctamente un poco más de 1 segundo.