Jeg har et kommandolinjeprogram i Python, som tager et stykke tid at afslutte. Jeg vil gerne vide, hvor lang tid det præcist tager at køre færdigt.
Jeg har kigget på timeit
-modulet, men det ser ud til at det kun er til små kodestumper. Jeg ønsker at time hele programmet.
Den enkleste måde i Python:
import time
start_time = time.time()
main()
print("--- %s seconds ---" % (time.time() - start_time))
Dette forudsætter, at dit program tager mindst en tiendedel af et sekund at køre.
Udskriver:
--- 0.764891862869 seconds ---
I Linux eller UNIX:
time python yourprogram.py
I Windows, se denne Stackoverflow-diskussion: https://stackoverflow.com/questions/673523/how-to-measure-execution-time-of-command-in-windows-command-line
Den løsning af rogeriopvl virker fint, men hvis du vil have mere specifikke oplysninger, kan du bruge Pythons indbyggede profiler. Tjek denne side:
http://docs.python.org/library/profile.html
en profiler fortæller dig en masse nyttige oplysninger som f.eks. den tid, der bruges i hver funktion