Calcola il tempo trascorso in Python
-
Calcola il tempo trascorso di una funzione con la funzione
time()
del modulotime
in Python -
Calcola il tempo trascorso di una funzione con la funzione
perf_counter()
del modulotime
in Python -
Calcola il tempo trascorso di una funzione con la funzione
process_time()
del modulotime
in Python
In questo tutorial, discuteremo dei metodi per calcolare il tempo di esecuzione di un programma in Python.
Il modulo time
è un modulo integrato che contiene molte funzioni relative al tempo. Diversi metodi all’interno del modulo time possono essere utilizzati per calcolare il tempo di esecuzione di un programma in Python. Questi metodi sono discussi di seguito.
Calcola il tempo trascorso di una funzione con la funzione time()
del modulo time
in Python
La funzione time()
ci fornisce l’ora corrente in secondi. Restituisce un valore float che contiene l’ora corrente in secondi. Il seguente esempio di codice ci mostra come possiamo calcolare il tempo di esecuzione di una funzione con la funzione time()
in Python.
import time
start = time.time()
print("The time used to execute this is given below")
end = time.time()
print(end - start)
Produzione:
The time used to execute this is given below
0.00011444091796875
Nel codice sopra, inizializziamo prima la variabile start
che contiene l’ora di inizio usando la funzione time()
e poi inizializziamo la variabile end
dopo l’istruzione print()
usando la funzione time()
. Quindi calcoliamo il tempo di esecuzione totale sottraendo l’start
dalla end
.
Calcola il tempo trascorso di una funzione con la funzione perf_counter()
del modulo time
in Python
La funzione perf_counter()
fornisce la misura più accurata dell’ora di sistema. La funzione perf_counter()
restituisce il tempo a livello di sistema e tiene conto del tempo di sospensione. La funzione perf_counter()
può essere utilizzata anche per calcolare il tempo di esecuzione di una funzione. Il seguente esempio di codice ci mostra come possiamo calcolare il tempo di esecuzione di una funzione con la funzione perf_counter()
in Python.
import time
start = time.perf_counter()
print("This time is being calculated")
end = time.perf_counter()
print(end - start)
Produzione:
This time is being calculated
0.00013678300001629395
Nel codice sopra, inizializziamo prima la variabile start
che contiene l’ora di inizio usando la funzione perf_counter()
e poi inizializziamo la variabile end
dopo l’istruzione print()
usando la funzione perf_counter()
. Quindi calcoliamo il tempo di esecuzione totale sottraendo l’start
dalla end
.
Calcola il tempo trascorso di una funzione con la funzione process_time()
del modulo time
in Python
La funzione perf_counter()
è influenzata da altri programmi in esecuzione in background sulla macchina. Conta anche il tempo di sonno. Quindi, non è l’ideale per misurare il tempo di esecuzione di un programma.
La migliore pratica per usare la funzione perf_counter()
è di eseguirla più volte, e poi il tempo medio darebbe una stima ragionevolmente accurata del tempo di esecuzione.
Un altro approccio potrebbe essere quello di utilizzare la funzione process_time()
. La funzione process_time()
è specificatamente progettata per stimare il tempo di esecuzione di un programma. Non è influenzato da altri programmi in esecuzione in background sulla macchina. Inoltre non conta il tempo di sonno.
La funzione process_time()
restituisce un valore float che contiene la somma del sistema e il tempo CPU utente del programma. Il seguente esempio di codice ci mostra come possiamo calcolare il tempo di esecuzione di una funzione con la funzione process_time()
in Python.
import time
start = time.process_time()
print("This time is being calculated")
end = time.process_time()
print(end - start)
Produzione:
This time is being calculated
0.000991254000000108
Nel codice sopra, inizializziamo prima la variabile start
che contiene l’ora di inizio usando la funzione process_time()
e poi inizializziamo la variabile end
dopo l’istruzione print()
usando la funzione process_time()
. Quindi calcoliamo il tempo di esecuzione totale sottraendo l’start
dalla 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