Ich habe das timing.py
Modul in mein eigenes site-packages
Verzeichnis, und fügen Sie einfach import timing
am Anfang meines Moduls:
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")
Ich kann auch anrufen timing.log
aus meinem Programm heraus, wenn es wichtige Etappen innerhalb des Programms gibt, die ich zeigen möchte. Aber einfach einschließen import timing
druckt die Start- und Endzeit sowie die insgesamt verstrichene Zeit. (Verzeihen Sie meine unklare secondsToStr
Funktion wird lediglich eine Fließkommazahl von Sekunden in der Form hh:mm:ss.sss formatiert).
Hinweis: Eine Python 3-Version des obigen Codes finden Sie unter aquí o aquí .