1. ホーム
  2. python

[解決済み] Python 2.7でコードブロックの実行時刻を取得する

2023-05-09 17:14:20

質問

Pythonプログラムにおいて、あるコードブロックの評価にかかった時間を計測したいです。 おそらくユーザー CPU 時間、システム CPU 時間、および経過時間の間で分離することができます。

私は timeit モジュールは知っていますが、自分で書いた関数がたくさんあり、設定時にそれらを渡すのはあまり簡単ではありません。 をセットアップ時に渡すのは簡単ではありません。

みたいな使い方ができるものがいいんだけど。

#up to here I have done something....
start_counting() #or whatever command used to mark that I want to measure
                   #the time elapsed in the next rows
# code I want to evaluate
user,system,elapsed = stop_counting() #or whatever command says:
                                      #stop the timer and return the times

ユーザーCPU時間、システムCPU時間は必須ではありません(計測はしたいですが)。 経過時間については、このようなことができればと思います。 複雑なコマンドやモジュールを使うのではなく、このようなことができればと思っています。

どのように解決するのですか?

経過時間を秒単位で取得するには timeit.default_timer() :

import timeit
start_time = timeit.default_timer()
# code you want to evaluate
elapsed = timeit.default_timer() - start_time

timeit.default_timer() の代わりに time.time() または time.clock() というのは、どのプラットフォームでも、より高い解像度を持つタイミング関数が選択されるからです。