基本上,我希望能够输出运行应用程序的已用时间.我想我需要使用某种timeit函数,但我不确定是哪一个.我正在寻找类似以下的东西......
START MY TIMER
code for application
more code
more code
etc
STOP MY TIMER
Run Code Online (Sandbox Code Playgroud)
OUTPUT ELAPSED TIME在计时器的启动和停止之间执行上述代码.思考?
Dav*_*son 39
最简单的方法是:
import time
start_time = time.time()
Run Code Online (Sandbox Code Playgroud)
在开始和
print "My program took", time.time() - start_time, "to run"
Run Code Online (Sandbox Code Playgroud)
在末尾.
jfs*_*jfs 16
要在不同平台上获得最佳结果:
from timeit import default_timer as timer
# START MY TIMER
start = timer()
code for application
more code
more code
etc
# STOP MY TIMER
elapsed_time = timer() - start # in seconds
Run Code Online (Sandbox Code Playgroud)
timer()是一个time.perf_counter()在Python 3.3和time.clock()/time.time()相应的Windows /其他平台上的旧版本.
Ble*_*der 10
如果您运行的是Mac OS X或Linux,只需使用该time实用程序:
$ time python script.py
real 0m0.043s
user 0m0.027s
sys 0m0.013s
Run Code Online (Sandbox Code Playgroud)
如果没有,请使用time模块:
import time
start_time = time.time()
# ...
print time.time() - start_time, 's'
Run Code Online (Sandbox Code Playgroud)
您可以使用系统命令time:
foo@foo:~# time python test.py
hello world!
real 0m0.015s
user 0m0.008s
sys 0m0.007s
Run Code Online (Sandbox Code Playgroud)
在程序开始时取系统当前时间,并在结束时再次取程序结束时间,最后减去两个时间。
下面的代码描述了我们如何执行上述操作:
import time
start = time.time()
Run Code Online (Sandbox Code Playgroud)
示例代码从这里开始
cnt = 1
for fun in range(10**11):
if (fun % 10**9 == 0):
print(cnt, fun)
cnt += 1
Run Code Online (Sandbox Code Playgroud)
示例代码到此结束
end = time.time()
print('Time taken for fun program: ', end - start)
Run Code Online (Sandbox Code Playgroud)
希望这永远是清楚的。
| 归档时间: |
|
| 查看次数: |
34109 次 |
| 最近记录: |