Hoe krijg ik de tijd van de uitvoering van een Python programma's?

Ik heb een opdrachtregelprogramma in Python dat er een tijdje over doet om te voltooien. Ik wil de exacte tijd weten die het duurt voordat het programma klaar is.

Ik heb gekeken naar de timeit module, maar het lijkt erop dat het alleen voor kleine stukjes code is. Ik wil het hele programma timen.

Oplossing

De eenvoudigste manier in Python:

import time
start_time = time.time()
main()
print("--- %s seconds ---" % (time.time() - start_time))

Dit veronderstelt dat je programma minstens een tiende van een seconde nodig heeft om te lopen.

Afdrukken:

--- 0.764891862869 seconds ---
Commentaren (6)

In Linux of UNIX:

time python yourprogram.py

In Windows, zie deze Stackoverflow discussie: https://stackoverflow.com/questions/673523/how-to-measure-execution-time-of-command-in-windows-command-line

Commentaren (4)

De oplossing van rogeriopvl werkt prima, maar als je meer specifieke info wilt kun je de ingebouwde profiler van Python gebruiken. Kijk op deze pagina:

http://docs.python.org/library/profile.html

een profiler vertelt je veel nuttige informatie zoals de tijd die je in elke functie doorbrengt

Commentaren (0)