J'ai mis ce timing.py
dans mon propre module site-packages
et insérez simplement import timing
en haut de mon module :
import atexit
from time import clock
def secondsToStr(t):
return "%d:%02d:%02d.%03d" % \
reduce(lambda ll,b : divmod(ll[0],b) + ll[1:],
[(t*1000,),1000,60,60])
line = "="*40
def log(s, elapsed=None):
print line
print secondsToStr(clock()), '-', s
if elapsed:
print "Elapsed time:", elapsed
print line
print
def endlog():
end = clock()
elapsed = end-start
log("End Program", secondsToStr(elapsed))
def now():
return secondsToStr(clock())
start = clock()
atexit.register(endlog)
log("Start Program")
Je peux aussi appeler timing.log
de mon programme s'il y a des étapes importantes dans le programme que je veux montrer. Mais le fait d'inclure import timing
imprimera les heures de début et de fin, ainsi que le temps total écoulé. (Pardonnez mon obscurité secondsToStr
il ne fait que formater un nombre de secondes en virgule flottante sous la forme hh:mm:ss.sss).
Remarque : une version Python 3 du code ci-dessus peut être trouvée aquí o aquí .