Visual Studio CodeでPythonスクリプトを効率的にデバッグする方法

環境

  • Windows 10
  • Python 3.10.1
  • VSCode

使用するソースコード

以下の公開リポジトリに置いています

GitHub - masayan1126/tao-py-py: 作業自動化用 Python ライブラリ
作業自動化用 Python ライブラリ. Contribute to masayan1126/tao-py-py development by creating an account on GitHub.

事前準備

専用の拡張機能をインストールするだけです。

拡張機能のインストール

Pythonと検索し、表示される下図の拡張機能をインストールします

デバック手順

ブレークポイントの設置

実行したいPythonファイルを開き、ブレークポイントを設定しておきます。ブレークポイントを設置した行には赤い点が表示されます

ブレークポイントとは、デバッグの処理を止めたい箇所のことです。ブレークポイントを設定した行の処理は実行されません。設定したい行をクリックするだけブレークポイントを設置可能です

デバックを開始する

実行とデバックをクリックします

Python Fileを選択すると次画面でデバックが開始します

vscodeのパネル領域のターミナルタブには新しくPython Debug Consoleが開かれて、そこにプログラムを実行した結果が表示されます

下図のように、ブレークポイントを設置した行で処理が止まり、それ以前の処理で使った変数の中身が画面左側に表示されます

print文を使用して変数の中にどんな値が入っているのか調べるよりも圧倒的に効率的です。また、ソースコード上の変数にカーソールをホバーさせるだけでも変数の中身が表示され、確認可能です。

デバックのTips

デバックバー

デバッグを始めると下図のようなバーが出てきます。

左から、Continue,Step Over, Step Into, Step Out, Restart, Stopです。ContinueStopだけでも最低限デバックができます

項目内容
Continue(続行)次のブレークポイントまでプログラムを実行。ブレークポイントが複数ある場合、最初のブレークポイントで処理が停止するが、続けて次のブレークポイントまで処理を進める(ブレークポイントがなければ最後まで実行)
Step Over後続のプログラムを一行だけ実行する
Step Intoブレークポイントしているところから、行ごとにステップ実行します。関数が呼ばれるとその中に入ってプログラムを実行(関数が呼ばれているところにくると、その関数の中に入ってステップ実行)
Step Outブレークポイントしているところから、行ごとにステップ実行します。ステップ実行しているところが、関数の中であった場合、関数が呼ばれているところまで実行して関数を抜けます
Restart(再起動)一度プログラムの実行をやめて、再び実行を始める
Stopデバックの停止

ブレークポイント設置箇所の一覧

エディターのサイドメニューのブレークポイントのエリアから、プロジェクト内でブレークポイントを設置している箇所の一覧が確認でき、チェックを外すとブレークポイントも解除できます

Python学習におすすめの書籍

独習Python/山田祥寛【3000円以上送料無料】
bookfan 1号店 楽天市場店
¥ 3,300(2023/01/31 18:22時点)
タイトルとURLをコピーしました