Я знаю, що це пізно, але насправді дуже подобається використовувати:
import time
start = time.time()
##### your timed code here ... #####
print "Process time: " + (time.time() - start)
time.time()
дає секунди з епохи. Оскільки це стандартизований час у секундах, ви можете просто відняти час початку від кінця часу, щоб отримати час процесу (у секундах). time.clock()
добре для бенчмаркінгу, але я вважаю це марним, якщо ви хочете знати, скільки часу зайняв ваш процес. Наприклад, набагато інтуїтивніше сказати «мій процес займає 10 секунд», ніж сказати «мій процес займає 10 процесорних тактових блоків»
>>> start = time.time(); sum([each**8.3 for each in range(1,100000)]) ; print (time.time() - start)
3.4001404476250935e+45
0.0637760162354
>>> start = time.clock(); sum([each**8.3 for each in range(1,100000)]) ; print (time.clock() - start)
3.4001404476250935e+45
0.05
У першому прикладі вище показано час 0,05 для time.clock () проти 0,06377 для time.time ()
>>> start = time.clock(); time.sleep(1) ; print "process time: " + (time.clock() - start)
process time: 0.0
>>> start = time.time(); time.sleep(1) ; print "process time: " + (time.time() - start)
process time: 1.00111794472
У другому прикладі якось час процесора показує "0", хоча процес спав секунду. time.time()
правильно показує трохи більше 1 секунди.