【Visual Studio Code】VSCodeで、Pythonをサクッとデバッグ!

はじめに

どんな言語もそうですが、学習や開発を進める中で「デバッグ」は欠かせない機能です。

本ブログでは、初心者向けに「VSCodeでPythonをデバッグする方法」を、設定ファイルの内容や実際のコード例を交えながら体系的に紹介していきます。

本ブログで得られる知識

  • Pythonデバッグに必要なVSCodeの設定方法
  • launch.jsonの作成と構成の意味
  • ブレークポイントの使い方やステップ実行の操作方法
  • 実際のサンプルコードを使ったデバッグの流れ
  • よくあるトラブルとその対処法

VSCodeでPythonデバッグを始めるための準備

Pythonのインストール

Python公式サイトから最新の安定板をインストールします。

インストール方法は、下記のブログ記事を参照ください。

参考:Pythonインストール方法

今回は現時点の最新安定板、Ver. 3.13 をインストールしました。

VSCode の基本設定(Pythonデバッグの準備)

Python拡張機能のインストール

VSCodeは拡張機能によって機能を強化できます。Pythonのデバッグには、Microsoft公式の「Python」拡張機能が必須です。

  • ①拡張アイコンをクリック
  • ②検索バーに「Python」と入力
  • ③「Python」を選択し、「インストール」ボタンをクリック

「Python」をインストールすると、以下の関連した拡張機能も同時にインストールされ、デバッグ機能だけでなく、コード補完・Lint(潜在的な問題やスタイル違反を検出するツール)なども含まれるPython開発の基盤となります。

  • Pylance
    Python開発をより快適かつ堅牢にするための拡張機能
  • Python Debugger
    デバッガー本体
  • Python Environments
    Pythonの仮想環境管理をGUIベースで直感的に操作できるようにするためのツール

Pythonインタプリタの選択

拡張機能をインストールしたら、次にPythonインタプリタを選択します。これは、VSCodeがどのPython環境を使ってコードを実行するかを指定する設定です。

  • インタプリタの選択手順
    • Ctrl + Shift + P を押してコマンドパレットを開き「Python:インタープリターを選択」をクリック
  • 今回インストールした、Python 3.13 を選択する

launch.jsonの作成と設定

VSCodeで本格的なデバッグを行うには、.vscode/launch.json という設定ファイルを作成する必要があります。このファイルには、どのようにPythonコードを実行するかの構成情報を記述します。

  • launch.json の作成方法
    • デバッグ対象のPythonフォルダを開きます
    • 左側の「Run and Debug」アイコン(虫のマーク)をクリック
    • 「launch.json ファイルを作成します」をクリック
  • launch.json ファイルの内容(例)
{
  // IntelliSense を使用して利用可能な属性を学べます。
  // 既存の属性の説明をホバーして表示します。
  // 詳細情報は次を確認してください: https://go.microsoft.com/fwlink/?linkid=830387
  "version": "0.2.0",
  "configurations": [
    {
      "name": "Python: Current File",
      // "type": "debugpy" バージョン 2024.3.0(3月リリース)以降、
      // "type": "python" から "type": "debugpy" へと指定方法が変更された。
      "type": "debugpy",
      "request": "launch",
      "program": "${file}",
      "console": "integratedTerminal"
   // 上記以外のパラメタ(参考)
   // "args": [
      // "照幸",
      // "42"
      // ],
      // "env": {
      // "DEBUG_MODE": "true",
      // "API_KEY": "your-api-key-here"
      }
    }
  ]
}
  • 各プロパティの意味
プロパティ説 明
nameデバッグ構成の名前(任意)
type実行する言語の種類(debugpy=Python)
request実行方法(launchは新規実行)
program実行対象のファイル(${file}は現在開いているファイル)
console実行時に使用するコンソール(integratedTerminal推奨)
args実行時に渡すコマンドライン引数(リスト形式)
env実行時に設定する環境変数(キーと値のペア)

以上で、基本的なデバッグの設定準備は完了です。

VSCode Python デバッグの基本

設定が整ったら、いよいよ実際のデバッグ操作に入ります。ここでは、ブレークポイントの設定からステップ実行、変数の確認まで、基本的な操作方法を紹介します。

ブレークポイントの設定

  • 一時停止のポイントを指定
    • コードの左端(行番号の横)をクリックすると、赤い丸が表示されます。これがブレークポイントで、実行が一時停止するポイントです。
  • 条件付きブレークポイント
    • 右クリック → 「条件付きブレークポイント」を選択すると、特定の条件でのみ停止させることも可能です。

デバッグの開始とステップ操作

  • 「Run and Debug」ボタンをクリック ⇀ 「実行とデバッグ」をクリック、又はF5押下
  • 実行が開始され、ブレークポイントで停止
  • 以下の操作が可能になります
    • ①続行(F5押下と同様)
    • ②ステップオーバー(関数の中には入らず次の行へ)
    • ③ステップイン(関数の中に入る)
    • ④ステップアウト(関数の外に戻る)
    • ⑤再起動
    • ⑥停止(shift + F5)

変数の確認とデバッグコンソール

停止中は、左側の「Variables」パネルで変数の状態を確認できます。また、「Debug Console」では式の評価や変数の値を直接確認できます。

  • 「Variables」パネル
  • デバッグコンソール

例外処理のデバッグ

  • try ブロックにブレークポイントを設定
  • except に入るかどうかを確認

よくあるトラブルと対処法

デバッグが開始されない場合

  • launch.jsonの構文ミスがないか確認
  • Pythonインタプリタが正しく選択されているか

実行ファイルが見つからないエラー

  • program のパスが正しいか確認
  • ${workspaceFolder} を使って相対パスを指定する方法も有効

まとめ

VSCodeは、Python開発において非常に強力なデバッグ機能を提供しています。launch.jsonによる柔軟な構成、ブレークポイントやステップ実行による詳細なコード解析、そしてデバッグコンソールによるリアルタイムな評価機能など、初心者から中級者まで幅広く活用できます。

タイトルとURLをコピーしました