4

Python スクリプトを作成しましたが、実行に予想以上に時間がかかっており、ランタイムを占有するスクリプト内の特定の行の明確な候補がありません。

各行を実行するのにかかる時間を確認するためにコードに入れることができるものはありますか?

どうもありがとう。

4

3 に答える 3

6

プロファイリングで python を実行してみましたか?

python -m cProfile --sort cumulative your_single_thread_script.py &> out.log

この質問で詳細を見つけることができますHow can you profile a python script?

プロファイリング ユーティリティの詳細については、こちらを参照してください。

于 2013-06-26T07:49:35.403 に答える
4

hotshotなどのプロファイラーを使用します。それは簡単です!

1) プロファイルを使用してコードを実行します。

import hotshot

prof = hotshot.Profile("hotshot_stats.prof")
prof.runcall(my_function)
prof.close()

2) 結果のファイルを読み取ります。

from hotshot import stats

s = stats.load("hotshot_stats.prof")
s.strip_dirs()
s.sort_stats('time', 'calls')
s.print_stats(20)
于 2013-06-26T07:53:36.367 に答える
3

timeitPython 2.3以降の標準モジュールは、ドキュメントを参照してください。

于 2013-06-26T07:49:31.540 に答える