VSCode のデバッグ構成で launch.json を使ってみる

2024.03.27

こんにちは!よしななです。 今回は、VSCode 上での python コードデバッグに launch.json を使ってみたら便利だったので備忘録として手順を残します。

目次

  • やりたいこと
  • 対象環境
  • 対象読者
  • 手順
    • 1.launch.json ファイルの作成
    • 2.作成した launch.json ファイルでデバッグの実行

やりたいこと

  • 以下に示したサンプルコードを実行し、VSCode 上で launch.json を用いてデバッグを実行してみます。
  • ユーザーが入力した2つの積を出力し、出力した積にユーザーが入力した2つ目の数字を足して和を求めるサンプルコードです。

test_product.py

def main():
    # ユーザーに二つの数字を入力してもらう
    number1 = float(input("1つ目の数字を入力してください: "))
    number2 = float(input("2つ目の数字を入力してください: "))
    
    # 二つの数の積を計算する
    product = number1 * number2
    
    # 結果を表示する
    print(f"{number1} と {number2} の積は {product} です")

    # product に number1 の値 を足す
    product2 = product + number1
    
    # 結果を表示する
    print(f"{product} と {number1} の和は {product2} です")

if __name__ == "__main__":
    main()

対象環境

対象読者

  • launch.json を使用したデバッグの実行手順を知りたい方

手順

1.launch.json ファイルの作成

まずは、launch.json ファイルを作成します。

VSCode を開き、サイドバー > 実行とデバッグをクリックします。
launch.json ファイルを作成します。をクリックします。

次に、デバッガーを選択します。
Python Debuggerをクリックします。

次に、デバッグ構成の選択をします。
Python ファイル 現在アクティブな Python ファイルをデバッグするを選択します。

こちらで 設定は完了となります。
カレントディレクトリに .vscode ディレクトリが作成され、launch.json ファイルが配置されます。launch.json で設定した内容でデバッグが実行されます。
以下がデフォルト状態の launch.json ファイルになります。
今回はデフォルト状態でデバッグを実行します。

{
    // IntelliSense を使用して利用可能な属性を学べます。
    // 既存の属性の説明をホバーして表示します。
    // 詳細情報は次を確認してください: https://go.microsoft.com/fwlink/?linkid=830387
    "version": "0.2.0",
    "configurations": [
        {
            "name": "Python デバッガー: 現在のファイル",
            "type": "debugpy",
            "request": "launch",
            "program": "${file}",
            "console": "integratedTerminal"
        }
    ]
}

2.作成した launch.json ファイルでデバッグの実行

launch.json ファイルが作成できたので、デバッグを実行していきます。

まずは、デバッグ作業において実行中のプログラムを意図的に一時停止させるブレークポイントを設置します。デバッグ対象のファイルを開き、以下画像の通りコードの実行を停止したい行をクリックします。
今回は4行目number2 = float(input("2つ目の数字を入力してください: ")) 部分をクリックします。

ブレークポイントを設定したら、次にデバッグを実行します。
サイドバー > 画面左上の Python デバッグ > 現在のファイル をクリックします。
サイドバーのデバッガーが起動します。

サイドバーのデバッガーが起動した状態で、ターミナルに3を入力してみます。

すると、以下の画像のようにブレークポイントを設置した箇所で処理が停止します。
また、エディタ左側のVARIABLESの箇所に現在のローカル変数の中身が確認できるようになります。
入力した3がローカル変数number1に代入されていることが分かります。

F10キーもしくは以下画像の赤枠で囲んだアイコン(ステップオーバー)をクリックすると、処理が次の行に進みます。
以下の画像はF10キーを3回押した後の状態をスクリーンショットしたものです。

そのままステップ実行を繰り返すと、15.0 と 3.0 の和は 18.0 ですがターミナルに出力され、処理が終了します。

他にもF5キーもしくは以下画像の赤枠で囲んだアイコン(続行)をクリックして次のブレークポイントに移動したり、

F11 キーもしくは以下画像の赤枠で囲んだアイコン(ステップインする)をクリックして、
関数やメソッド内部の処理についてもステップ実行したりできます。

こちらでVSCode のデバッグ構成でlaunch.jsonを使ってみるは完了となります。
VSCode 上でのデバッグは他にも便利機能があったので別記事で紹介したいと思います。
ここまで読んでいただきありがとうございました!