Minulla on Python-komentoriviohjelma, jonka suorittaminen kestää jonkin aikaa. Haluan tietää tarkan ajan, joka sen suorittamiseen kuluu.
Olen tutkinut timeit
-moduulia, mutta näyttää siltä, että se soveltuu vain pienille koodinpätkille. Haluan ajoittaa koko ohjelman.
Yksinkertaisin tapa Pythonissa:
import time
start_time = time.time()
main()
print("--- %s seconds ---" % (time.time() - start_time))
Tämä olettaa, että ohjelmasi suorittaminen kestää vähintään kymmenesosasekunnin.
Tulostaa:
--- 0.764891862869 seconds ---
Linuxissa tai UNIXissa:
time python yourprogram.py
Windowsissa katso tämä Stackoverflow-keskustelu: https://stackoverflow.com/questions/673523/how-to-measure-execution-time-of-command-in-windows-command-line
rogeriopvl toimii hyvin, mutta jos haluat tarkempaa tietoa, voit käyttää Pythonin sisäänrakennettua profiloijaa. Tarkista tämä sivu:
http://docs.python.org/library/profile.html
Profiler kertoo paljon hyödyllistä tietoa, kuten jokaiseen funktioon käytetyn ajan.