基本的に、アプリケーションが実行されている経過時間を出力できるようにしたいです。なんらかのtimeit関数を使用する必要があると思いますが、どちらを使用するかわかりません。次のようなものを探しています...
START MY TIMER
code for application
more code
more code
etc
STOP MY TIMER
タイマーの開始と停止の間に上記のコードを実行するには、出力経過時間。考え?
それを行う最も簡単な方法は以下を置くことです:
import time
start_time = time.time()
初めに
print "My program took", time.time() - start_time, "to run"
最後に。
異なるプラットフォームで最良の結果を得るには:
_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
_
timer()
は time.perf_counter()
in Python 3.3およびtime.clock()/time.time()
in Windows in other on Windows/other対応するプラットフォーム。
Mac OS XまたはLinuxを実行している場合は、time
ユーティリティを使用するだけです。
$ time python script.py
real 0m0.043s
user 0m0.027s
sys 0m0.013s
そうでない場合は、time
モジュールを使用します。
import time
start_time = time.time()
# ...
print time.time() - start_time, 's'
システムコマンドtime
を使用できます。
foo@foo:~# time python test.py
hello world!
real 0m0.015s
user 0m0.008s
sys 0m0.007s
プログラムの開始時にシステムの現在時刻を取得し、最後にもう一度プログラムの終了時刻を取得し、最後に2つの時間を減算します。
以下のコードは、上記の操作を実行する方法を示しています。
import time
start = time.time()
ここからサンプルコードです
cnt = 1
for fun in range(10**11):
if (fun % 10**9 == 0):
print(cnt, fun)
cnt += 1
サンプルコードはここで終わります
end = time.time()
print('Time taken for fun program: ', end - start)
これが永遠に明確であることを願っています。
開始時と終了時の現在のシステム時刻を取得し、最終時刻から開始時刻を引くだけではどうでしょうか。