나는 이것이 늦다는 것을 알고 있지만 실제로는 다음을 사용하는 것을 정말로 좋아합니다.
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
위의 첫 번째 예에서 time.clock ()의 경우 0.05와 time.time ()의 경우 0.06377의 시간이 표시됩니다.
>>> 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
두 번째 예에서는 프로세스가 1 초 동안 잤더라도 프로세서 시간에 "0"이 표시됩니다. time.time()
1 초보다 조금 더 정확하게 표시합니다.