デコレータで関数の実行時間を計測する方法
関数の実行時間を計測するためにデコレータを使用する方法は、Pythonで非常に一般的です。以下に、関数の実行時間を計測するデコレータの例を示します。この例では、timeモジュールを使用して実行時間を計測します。
python
import time # 関数実行時間を計測するデコレータ def timing_decorator(func): def wrapper(*args, **kwargs): start_time = time.time() result = func(*args, **kwargs) end_time = time.time() execution_time = end_time - start_time print(f"{func.__name__} の実行時間: {execution_time}秒") return result return wrapper # デコレータを使用して実行時間を計測する @timing_decorator def slow_function(): time.sleep(2) @timing_decorator def fast_function(): pass # 関数を呼び出す slow_function() fast_function()
このコードでは、timing_decoratorデコレータを定義し、その中で関数の実行前と実行後にタイムスタンプを取得し、実行時間を計算しています。計測された実行時間は関数の名前とともに出力されます。
デコレータを関数に適用すると、関数が呼び出された際に実行時間が計測され、その結果が出力されます。このようにデコレータを使用することで、特定の関数やメソッドの実行時間を簡単に計測できます。
この方法を使えば、パフォーマンステストやコードの最適化の際に、どの部分が時間を消費しているかを特定し、問題を解決するのに役立ちます。

ディスカッション
コメント一覧
まだ、コメントがありません