Calcular el tiempo transcurrido en Python
-
Calcular el tiempo transcurrido de una función con la función
time()
del módulotime
en Python -
Calcular el tiempo transcurrido de una función con la función
perf_counter()
del módulotime
en Python -
Calcular el tiempo transcurrido de una función con la función
process_time()
del módulotime
en Python
En este tutorial, discutiremos métodos para calcular el tiempo de ejecución de un programa en Python.
El módulo time
es un módulo integrado que contiene muchas funciones relacionadas con el tiempo. Se pueden usar varios métodos dentro del módulo de tiempo para calcular el tiempo de ejecución de un programa en Python. Estos métodos se analizan a continuación.
Calcular el tiempo transcurrido de una función con la función time()
del módulo time
en Python
La función time()
nos da la hora actual en segundos. Devuelve un valor flotante que contiene la hora actual en segundos. El siguiente ejemplo de código nos muestra cómo podemos calcular el tiempo de ejecución de una función con la función time()
en Python.
import time
start = time.time()
print("The time used to execute this is given below")
end = time.time()
print(end - start)
Producción :
The time used to execute this is given below
0.00011444091796875
En el código anterior, primero inicializamos la variable start
que contiene la hora de inicio usando la función time()
y luego inicializamos la variable end
después de la declaración print()
usando la función time()
. Luego calculamos el tiempo total de ejecución restando el start
del end
.
Calcular el tiempo transcurrido de una función con la función perf_counter()
del módulo time
en Python
La función perf_counter()
proporciona la medida más precisa del tiempo del sistema. La función perf_counter()
devuelve el tiempo de todo el sistema y tiene en cuenta el tiempo de reposo. La función perf_counter()
también se puede utilizar para calcular el tiempo de ejecución de una función. El siguiente ejemplo de código nos muestra cómo podemos calcular el tiempo de ejecución de una función con la función perf_counter()
en Python.
import time
start = time.perf_counter()
print("This time is being calculated")
end = time.perf_counter()
print(end - start)
Producción :
This time is being calculated
0.00013678300001629395
En el código anterior, primero inicializamos la variable start
que contiene la hora de inicio usando la función perf_counter()
y luego inicializamos la variable end
después de la declaración print()
usando la función perf_counter()
. Luego calculamos el tiempo total de ejecución restando el start
del end
.
Calcular el tiempo transcurrido de una función con la función process_time()
del módulo time
en Python
La función perf_counter()
se ve afectada por otros programas que se ejecutan en segundo plano en la máquina. También cuenta el tiempo de sueño. Por tanto, no es ideal para medir el tiempo de ejecución de un programa.
La mejor práctica para usar la función perf_counter()
es ejecutarla varias veces, y luego el tiempo promedio daría una estimación razonablemente precisa del tiempo de ejecución.
Otro enfoque sería utilizar la función process_time()
. La función process_time()
está diseñada específicamente para estimar el tiempo de ejecución de un programa. No se ve afectado por otros programas que se ejecutan en segundo plano en la máquina. Tampoco cuenta el tiempo de reposo.
La función process_time()
devuelve un valor flotante que contiene la suma del sistema y el tiempo de CPU del usuario del programa. El siguiente ejemplo de código nos muestra cómo podemos calcular el tiempo de ejecución de una función con la función process_time()
en Python.
import time
start = time.process_time()
print("This time is being calculated")
end = time.process_time()
print(end - start)
Producción :
This time is being calculated
0.000991254000000108
En el código anterior, primero inicializamos la variable start
que contiene la hora de inicio usando la función process_time()
y luego inicializamos la variable end
después de la declaración print()
usando la función process_time()
. Luego calculamos el tiempo total de ejecución restando el start
del end
.
Maisam is a highly skilled and motivated Data Scientist. He has over 4 years of experience with Python programming language. He loves solving complex problems and sharing his results on the internet.
LinkedIn