J'ai un programme en ligne de commande en Python qui met un certain temps à se terminer. Je veux connaître le temps exact qu'il met pour finir de s'exécuter.
J'ai regardé le module timeit
, mais il semble qu'il ne s'applique qu'à de petits bouts de code. Je veux chronométrer l'ensemble du programme.
La méthode la plus simple en Python :
import time
start_time = time.time()
main()
print("--- %s seconds ---" % (time.time() - start_time))
Cela suppose que votre programme prend au moins un dixième de seconde pour s'exécuter.
Imprime :
--- 0.764891862869 seconds ---
Dans Linux ou UNIX :
time python yourprogram.py
Sous Windows, voir cette discussion Stackoverflow : https://stackoverflow.com/questions/673523/how-to-measure-execution-time-of-command-in-windows-command-line
La solution de rogeriopvl fonctionne bien, mais si vous voulez des informations plus spécifiques, vous pouvez utiliser le profileur intégré de Python. Consultez cette page :
[http://docs.python.org/library/profile.html][1]
un profileur vous donne beaucoup d'informations utiles, comme le temps passé dans chaque fonction.