プロセスに接続
PyCharm は、オペレーティングシステムまたは PyCharm ターミナルから起動された Python スクリプトをデバッグモードではなく実行している場合に、Python ローカルプロセスへデバッガーを接続する方法を提供します。 リモートプロセスには接続できないことに注意してください。
Ubuntu の前提条件
Ubuntu およびその他の Linux ディストリビューションでは、初めてプロセスに接続しようとすると、 Ptrace: 操作不可エラーメッセージが表示される場合があります。 次のいずれかを実行します:
この制限を一時的に無効にするには、次のコマンドを入力します。
echo 0 | sudo tee /proc/sys/kernel/yama/ptrace_scopeこの制限を永続的に無効にするには、編集用に /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を実行するか、システムを再始動してください。
詳細は こちらをご覧ください。
ローカルプロセスにアタッチする
Ctrl+Alt+F5 を押すか、メインメニューから を選択します。
PyCharm は、実行中のローカルプロセスのリストを表示します。 アタッチするプロセスを選択します。

プロセスが多すぎる場合は、プロセス名または PID の最初の文字を入力してリストを絞り込むことができます。
プロセスにアタッチ リストに特定のプロセスだけを表示したい場合があります。 必要なパターンを対応するフィールドに ビルド、実行、デプロイ | Python デバッガー 設定ページ Ctrl+Alt+S で追加してください。たとえば、この文字列に一致するプロセスだけにアタッチしたい場合は「Scientific」と入力します。
PyCharm で通常行うのと同じ方法で デバッグを進めます(ブレークポイントの設定、 ステップ実行 、プロセスの 一時停止と再開、 式の評価など)。
アタッチしたプロセスがデバッグ情報を提供しない場合、ブレークポイントは利用できず、 逆アセンブリビューでステップが実行されます。
プロセスから切り離す
リモートプロセスからデタッチする手順は、ローカルデバッグセッションを停止する手順と同じです。 ただし、ローカルセッションとは異なり、デバッガーがデタッチされた後もターゲットプロセスは実行され続けます。
デバッグツールウィンドウ の デバッグ ツールウィンドウのツールバーにある 停止
ボタンをクリックします。
または、メインツールバーの 停止
をクリックするか、 Ctrl+F2 を押してから、閉じるセッションを選択します。