time.time vs. timeit.timeit

A veces, me gusta calcular cuánto tiempo tarda en ejecutarse partes de mi código. He revisado muchos sitios en línea y he visto, en general, dos formas principales de hacerlo. Uno esta usandotime.time y el otro esta usandotimeit.timeit.

Entonces, escribí un script muy simple para comparar los dos:

from timeit import timeit
from time import time
start = time()
for i in range(100): print('ABC')
print(time()-start, timeit("for i in range(100): print('ABC')", number=1))

Básicamente, mide el tiempo que tarda en imprimir "ABC" 100 veces en un bucle for. El número de la izquierda es el resultado paratime.time y el numero de la derecha es paratimeit.timeit:

# First run
0.0 0.012654680972022981
# Second run
0.031000137329101562 0.012747430190149865
# Another run
0.0 0.011262325239660349
# Another run
0.016000032424926758 0.012740166697164025
# Another run
0.016000032424926758 0.0440628627381413

Como puede ver, a veces, time.time es más rápido ya veces es más lento. ¿Cuál es la mejor manera (más precisa)?

Respuestas a la pregunta(1)

Su respuesta a la pregunta