PyCharm 2024.1 ヘルプ

プロセスに接続

PyCharm は、デバッグモードではなく、オペレーティングシステムまたは PyCharm ターミナルから起動された Python スクリプトを実行しながら、デバッガーを Python ローカルプロセスに接続する方法を提供します。リモートプロセスには接続できないことに注意してください。

Ubuntu の前提条件

Ubuntu およびその他の Linux ディストリビューションでは、初めてプロセスに接続しようとすると、Ptrace: 操作不可エラーメッセージが表示される場合があります。次のいずれかを実行します。

  1. この制限を一時的に無効にするには、次のコマンドを入力します。

    echo 0 | sudo tee /proc/sys/kernel/yama/ptrace_scope
  2. この制限を永続的に無効にするには、編集用に /etc/sysctl.d/10-ptrace.conf ファイルを開き、kernel.yama.ptrace_scope = 1 行を kernel.yama.ptrace_scope = 0 に変更します。

    変更をすぐに適用するには、上記のコマンド echo 0 | sudo tee /proc/sys/kernel/yama/ptrace_scope を入力します。

    または、sudo service procps restart を実行するか、システムを再始動してください。

詳細については、こちら(英語)をご覧ください(英語)

ローカルプロセスにアタッチする

  1. Ctrl+Alt+F5 を押すか、メインメニューから実行 | プロセスにアタッチを選択します。

  2. PyCharm は、実行中のローカルプロセスのリストを表示します。アタッチするプロセスを選択します。

    Select a process to attach

    必要に応じて、名前または PID の最初の文字を入力して、プロセスのリストを絞り込みます。

    プロセスにアタッチリストに特定のプロセスのみを表示したい場合があります。Ctrl+Alt+S 設定のビルド、実行、デプロイ | Python デバッガーページの対応するフィールドに必要なパターンを追加します。たとえば、この文字列に一致するプロセスのみを接続する場合は、「Scientific」と入力します。

  3. PyCharm で通常行うのと同じ方法でデバッグを続行します ( ブレークポイントの設定ステップスルー、プロセスの一時停止と再開、式の評価など)。

    アタッチしたプロセスがデバッグ情報を提供しない場合、ブレークポイントは利用できず、逆アセンブリビューでステップが実行されます。

プロセスから切り離す

リモートプロセスから切断する手順は、ローカルデバッグセッションを停止する場合と同じですが、その効果は異なります。接続を解除すると、デバッグセッションは終了しますが、プロセスは引き続き実行されます。

  • デバッグツールウィンドウのメインツールバーにある停止 the Stop button ボタンをクリックします。

  • または、メインツールバーの停止 the Stop button をクリックするか、Ctrl+F2 を押してから、閉じるセッションを選択します。

関連ページ:

デバッガーセッションを開始する

デバッガーセッションの開始は、プログラムを通常モードで実行するのと非常によく似ています。デバッガーはバックグラウンドで接続されているため、デバッガーセッションを開始するために特別な設定を行う必要はありません。PyCharm からプログラムを実行できる場合は、同じ構成を使用してプログラムをデバッグすることもできます。プログラムをデバッグするたびに、デバッガーセッションは実行 / デバッグ構成に基づいています。PyCharm を構成して、プログラムを起動する前に任意のパラメーターを使用し、任意のアク...

デバッグ

デバッグセッション中に、デバッガーをアタッチしてプログラムを起動します。デバッガーの目的は、プログラムの実行を妨害し、内部で何が起こっているかに関する情報を提供することです。これにより、プログラムのバグを検出して修正するプロセスが容易になります。デバッグが初めての場合は、PyCharm を使用したデバッグチュートリアルを試してください。デバッグオプションを構成するで一般的なデバッグプロパティと動作を構成します。デバッグが初めての場合は、すぐに使用できる構成が機能します。各デバッガー機能に関するト...

ブレークポイント

ブレークポイントは、特定のポイントでプログラムの実行を一時停止する特別なマーカーです。これにより、プログラムの状態と動作を調べることができます。ブレークポイントは、たとえば、特定のコード行に到達したときにプログラムを一時停止するなどの単純なものから、追加の条件をチェックしたり、ログに書き込んだりするなどのより複雑なロジックを含むものまであります。ブレークポイントは、一度設定すると、一時的なブレークポイントを除き、明示的に削除するまでプロジェクト内に残ります。ブレークポイントの種類:PyChar

プログラムのステップスルー

ステップは、プログラムの段階的な実行を制御するプロセスです。PyCharm は、戦略に応じて使用される一連のステップアクションを提供します(たとえば、次の行に直接移動するか、途中で呼び出されたメソッドを入力する必要があるかなど)。ステップボタンは、デバッグウィンドウのツールバーにあります。ステップオーバー:現在のコード行をステップオーバーし、ハイライトされた行にメソッド呼び出しが含まれている場合でも、次の行に移動します。メソッドの実装はスキップされ、呼び出し元メソッドの次の行に直接移動します。...

中断されたプログラムを調べる

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

デバッグツールウィンドウ

デバッガーセッションを開始すると、デバッグツールウィンドウが表示されます。このウィンドウを使用して、デバッガーセッションを制御し、プログラムデータ(フレーム、変数など)を表示および分析し、さまざまなデバッガーアクションを実行します。これは、デバッグツールウィンドウの概要です。ツールウィンドウの使用に関する一般的な手順については、ツールウィンドウを参照してください。ツールウィンドウのタブを切り替えるには、とを押します。セッションタブ、デバッガーコンソールタブ、変数と監視、フレーム、デバッガーツ