中断されたプログラムを調べる
デバッガーセッションが 開始されると、 デバッグツールウィンドウが表示され、次のいずれかが発生するまでプログラムが正常に実行されます。
その後、プログラムは中断され、現在の状態を調べたり、実行を制御したり、実行時にさまざまなシナリオをテストしたりできます。
フレームを調べる
プログラムの状態は フレームで表されます。 プログラムが一時停止すると、現在のフレームスタックが デバッグ ツールウィンドウの フレーム タブに表示されます。

フレームはアクティブなメソッドまたは関数呼び出しに対応します。 呼び出されたメソッドまたは関数のローカル変数、その引数、式の評価を可能にするコードコンテキストを格納します。
メソッド が呼び出されるたびに、新しいフレームがスタックの一番上に追加されます。 メソッド の実行が完了すると、対応するフレームがスタックから削除されます(後入れ先出し方式)。
フレームを調べることで、特定のパラメーターがメソッドに渡された理由と、呼び出し時の呼び出し元の状態を理解できます。
スタックをクリップボードにコピー
現在のスレッドのコールスタックをコピーするには、 フレーム タブの任意の場所を右クリックして、 Copy Stack を選択します。
変数の調査 / 更新
変数 タブには、選択した フレーム / スレッド内の変数のリストが表示されます。 変数を調べると、プログラムが特定の方法で動作する理由を理解できます。

各変数の左側にあるアイコンは、その型を示しています。
変数型
アイコン | 説明 |
|---|---|
ローカル配列 | |
ローカルプリミティブ型 | |
ウォッチと自動変数。 | |
ローカル参照変数 |
変数のコピー
変数を調べるときに、変数名または値をコピーして別の場所に貼り付けたり、別の変数と 比較したりする必要がある場合があります。
変数の名前をコピーするには、変数を右クリックして 名前をコピー を選択します。
変数が保持する値をコピーするには、変数を右クリックして 値をコピー Ctrl+C を選択します。
デフォルトでは、文字列変数はシングルクオートでコピーされます。 クオート方式を変更するには、
詳細 を デバッグ ツールウィンドウのツールバーでクリックし、 を選択して、必要なオプションを選択します。

変数をクリップボードと比較する
変数値を他の値と比較するには、 クリップボードと値を比較 オプションを使用します。 これは、たとえば、変数に長い文字列が格納されていて、それを別の長い文字列と比較する必要がある場合に役立ちます。
たとえば、テキストファイルから比較したいコンテンツをコピーします。
変数 タブで変数を右クリックし、 クリップボードと値を比較 を選択します。
開いた差分ビューアーで相違点を調べます。 差分ビューアー の詳細については、 ファイルとフォルダーの比較を参照してください。
専用の変数を表示するダイアログ
PyCharm では、専用ダイアログで変数をインスペクションできます。 これは、変数(または参照が保持されているオブジェクト)を追跡し、同時にフレームとスレッド間を移動できるようにする必要がある場合に便利です。
変数またはウォッチを右クリックし、 インスペクション を選択します。

データ構造を表示する
デバッグ ツールウィンドウで変数を表示しているときに、 配列として表示、 データフレームとして表示 、または シリーズとして表示 リンクをクリックして、 データビュー ツールウィンドウにデータを表示できます。

デフォルトでは、新しいテーブル表現が使用されます。
その他のアクション をクリックし、
テーブル表示間の切り替え を選択してテーブルインターフェースを変更します。
変数値を設定
プログラムが特定のデータでどのように動作するかをテストしたり、実行時にフローを変更したりしたい場合は、変数の値を変更することで実現できます。
変数を選択し、 F2 を押します。 または、コンテキストメニューから 値の設定 を選択します。
変数の値を入力し、 Enter を押します。

instance="rm"/>
ソースコードに移動する
変数 ペインから宣言に移動できます。
変数が宣言されているコードに移動するには、変数を右クリックして ソースに移動 F4 を選択します。
変数型のクラス宣言に移動するには、変数を右クリックして 型ソースに移動 Shift+F4 を選択します。
式の評価
PyCharm を使うと、デバッグセッションの途中で式を評価して、プログラムの状態に関する追加情報を取得したり、実行時にさまざまな実行シナリオをテストしたりできます。
この機能は、プログラムがブレークポイントに到達した後に中断された(一時停止されていない)場合にのみ機能します。
式内で呼び出されるメソッド内にブレークポイントがある場合、それらは無視されます。
エディターで簡単な式を評価する
式をすばやく評価するには、エディターで式をポイントします。 メソッド呼び出しはこの方法では評価できないことに注意してください。
評価する式をポイントします。 式の結果がツールチップに表示されます。

結果のオブジェクトの子要素を表示するには、
をクリックするか、 Ctrl+F1 を押します。

値のツールチップが邪魔になる場合は、遅延を増やすか、完全に無効にすることができます。 これを行うには、 設定 ダイアログ (Ctrl+Alt+S) で に移動し、好みに応じて 値ツールチップを表示 および 値ツールチップの遅延 オプションを設定します。
エディターで複雑な式を評価する
メソッド呼び出しを含むコード内の式を評価したい場合や、評価する式の特定の部分を指定したい場合は、 式のクイック評価 オプションを使用します。
式を選択して Ctrl+Alt+F8 を押すか、表示されるフローティングツールバーから 式の評価 を選択します。

あるいは、 に移動するか、 Shift+Alt を押したまま選択範囲をクリックします。
式のクイック評価 を構成して、コードを選択するだけで(メニュー / ショートカットを使用せずに)コードで機能するようにできます。 このオプションを有効にすると、誤ってメソッドを呼び出す可能性があるため、慎重に使用してください。
コード選択時に式を評価する
に移動し、 コード選択時に値ツールチップを表示する オプションを設定します。
任意の式を評価する
任意の式を評価することは、最も柔軟な評価オプションです。 現在のフレームのコンテキスト内にある限り、任意のカスタムコードを評価できます。 これを使用すると、ステートメント、関数呼び出し、ループなどを評価できます。
任意の式を評価するには、 変数 ペインの 式の評価 フィールドに式を入力し、 Enter を押します
結果はすぐ下に表示されます。 式フィールドの右側にある
をクリックして、 式をウォッチに追加することもできます。

長いコードブロックを評価したい場合は、そのための専用ダイアログを使用することをお勧めします:
専用ダイアログで式を評価
現在目の前にある式または変数 (たとえば、エディターまたは 変数 ペイン) から開始する場合は、それを選択します。

Alt+F8 に移動するか、コンテキストメニューから 式の評価 を選択します。 ショートカットは Ubuntu では機能しない可能性があります (正しく操作するには、 ショートカット設定を調整してください)。
「評価 」ダイアログで、選択した式を変更するか、「式 」フィールドに新しい式を入力します。 複数行のコードフラグメントを変更するには、「展開 Shift+Enter 」をクリックします。

評価 (複数行モードの場合は Ctrl+Enter )をクリックします。 式の結果が 結果 フィールドに表示されます。
式の結果は return ステートメントから取得されます。 return ステートメントがない場合、結果はコードの最後の行から取得されます(式である必要はなく、単一のリテラルでも機能します)。 値を取得できる有効な行がない場合、結果は
undefinedです。 指定した式を評価できない場合は、 結果 フィールドに理由が表示されます。
評価 ダイアログは非モーダルなので、フォーカスをエディターに戻して他の変数や式をコピーすることができます。 また、複数の 評価 ダイアログを開くこともできます。
インラインで値を表示
PyCharm は、変数の使用箇所のすぐ隣にその値を表示します。

変数値が変更されると、インラインビューは新しい値で更新され、色も変わります。

行にオブジェクトへの参照が含まれている場合は、エディターでそのフィールドを直接調べることができます。 このポップアップから、 変数値を変更したり インラインウォッチを追加したりすることもできます。

インラインビューはデフォルトで有効になっています。 これをオフにするには、 設定 ダイアログ (Ctrl+Alt+S) で に移動し、 値をインラインで表示する オプションを無効にします。
インラインウォッチを追加する
ある式の結果を特定の行に表示したい場合は、そのためのインライン ウォッチを設定できます。 インラインウォッチは永続的であり、セッションの再開後もアクティブなままです。
フィールドを追跡するオブジェクトを参照するインラインヒントをクリックします。
ポップアップで、フィールドを選択し、 インラインウォッチとして追加 をクリックします。

必要に応じてウォッチを微調整します。 有効な式をウォッチとして使用できます。

インラインウォッチを削除するには、ウォッチにカーソルを合わせて近くの十字をクリックします。
JSON と XML を視覚化する
インライン値を展開したり、JSON または XML を含む 文字列式を評価したりすると、PyCharm によってデータの構造化されたフォーマットビューが表示されます。
これにより、 コードの折りたたみや 選択範囲の拡大または縮小などのエディター機能を使用して、サブツリーを操作したり、大きなオブジェクト内での便利なナビゲーションを行ったりすることができます。
プレビューポップアップのタブを使用して、構造化ビューと生のビューを切り替えます。

ウォッチ式
変数またはより複雑な式の結果を追跡したい場合は、この変数または式の監視を設定します。 これは、変数のリストに定期的に表示されないものを評価する必要がある場合や、インスタンス変数を固定する必要がある場合に便利で、各 ステップの後にツリーを展開する必要がなくなります。
この機能は、プログラムがブレークポイントに到達した後に中断された(一時停止されていない)場合にのみ機能します。
ウォッチは、選択したフレームのコンテキストで評価されます。 ウォッチは、コンテキストから外れている場合、またはコンパイルに失敗した場合は評価できません。 この場合、ウォッチにはエラーアイコン のマークが付けられます。
ウォッチを追加する
ウォッチ式 タブで 新規ウォッチ式
をクリックします。
評価する変数または式を入力します。 式では、ローカルコンテキストにある限り、メソッド呼び出しの評価、変数の宣言などを行うことができます。

ウォッチ式 に変数 / 式を追加した後、変数 / 式はそこに残り、各 ステップで評価され、現在のコンテキストで結果を提供します。
ウォッチを編集する
目的のウォッチを右クリックして、 編集 を選択します。
ウォッチをコピーする
コピーしたいウォッチを選択します。
変数/ウォッチ式 タブの ウォッチ式の複製
をクリックするか、 Ctrl+D を押します。
ウォッチの順序を変更する
便宜上、 変数/ウォッチ式 ペインに表示されるウォッチの順序を変更できます。
変数/ウォッチ式 ペインの ウォッチ式を上に移動/ウォッチ式を下に移動 ボタン、または Alt+Shift+Up および Alt+Shift+Down キーボードショートカットを使用します。
ウォッチを削除する
単一の監視を削除するには、それを右クリックして ウォッチ式の除去 を選択します。 または、ウォッチを選択し、 変数/ウォッチ式 ペインで Delete を押します。
すべての監視を削除するには、 変数/ウォッチ式 ペインの任意の場所を右クリックし、 すべてのウォッチ式を除去 を選択します。
ウォッチは、変数と同じアクションを可能にします。 例として、 専用ダイアログで表示したり、 ソースコードへ移動するために使用できます。
ウォッチはプロジェクトの一部です。 これは、デバッグセッションを失うリスクなしに、デバッグセッションを停止して再実行できることを意味します。
視聴を一時停止して再開する
ウォッチがローカルコンテキストに依存していたり、大量の計算を伴う場合、一部のステップでは評価が現実的でないことがあります。 そのような場合は、ウォッチを一時停止して必要に応じて評価することができます。
ウォッチを一時停止するには、ウォッチを右クリックし、 ウォッチの一時停止 を選択します。

ウォッチを再開するには、ウォッチを右クリックし、 ウォッチの再開 を選択します。

一時停止中のウォッチの 1 回限りの評価を実行するには、ウォッチの近くにある 評価 をクリックします。

実行ポイント
現在の実行ポイントに戻る
プログラムの状態を調べるには、コード内を移動する必要があり、多くの場合はプログラムが中断されている場所へ戻る必要があります。
次のいずれかを実行します:
メインメニューで へ移動します。
Alt+F10 を押す。
デバッグ ツールウィンドウのステップツールバーで
をクリックし、開いたコンテキストメニューから
実行ポイントの表示 を選択します。
現在の実行ポイントは青い線で示されます。 この行のコードはまだ実行されていません。
