私はPythonで書かれた関数を持っており、最初から最後までどのように実行されているかを調べたいと思います。これをどうやって行うのですか?Pythonプログラムを実行開始から終了までどのようにトレースするのですか?
PyCharmをIDEとして使用していますが、トレース機能があるかどうかわかりません。
この問題で初心者向けのヒントやリソースはありますか?
ありがとうございました!
私はPythonで書かれた関数を持っており、最初から最後までどのように実行されているかを調べたいと思います。これをどうやって行うのですか?Pythonプログラムを実行開始から終了までどのようにトレースするのですか?
PyCharmをIDEとして使用していますが、トレース機能があるかどうかわかりません。
この問題で初心者向けのヒントやリソースはありますか?
ありがとうございました!
あなたが探しているのはプロファイラです。幸いにも、PyCharmは本当に強力で、豊富なdebugging/profiling toolsが付属しています。
PyCharmでコードを実行している場合は、調べたい機能内の最初の行にbreakpointを設定し、インターフェイスを使用してステップスルーします。
コマンドラインからコードを実行している場合は、Pythonのデバッグモジュールpdbに慣れておくことを強くお勧めします。あなたの機能を調べるために必要な作業は、一時的に行を追加することです:
import pdb;pdb.set_trace()
..機能の最初の行として。あなたがそれを実行し、この行にヒットすると、次の行に 'n'のような簡単な指示文を使ってコマンドラインで実行を進めることができます。
こんにちは、お返事ありがとうございます。私はPyCharm内で自分のコードを実行していますが、ブレークポイントを設定してステップを実行する方法を知るために利用できるビデオへのリンクをお勧めしますか? – eAx
私は正式なものは見つけられませんでしたが、このチャプターはPyCharm特有の概要を合理的に示しています:https://www.youtube.com/watch?v=8pv7qVcoNTk ここのコンセプトについて先読みしておけば、 : https://www.jetbrains.com/help/pycharm/2016.1/creating-line-breakpoints.html – lukewarm
私は、 'ipython'デバッガが' pdb'を使って作業するのがはるかに良いことがわかりました。 'from IPython.core.debugger import Tracer;という行を使います。トレーサ()() ' –
ありがとうございます!私はこれを見ます。 – eAx