VSCodeでPythonのデバッグ機能を使う方法

プログラミング

Pythonコードでエラーに悩まされていませんか?
「どこで止まったのか分からない」「printで確認するのは面倒」
そんな悩みを解決するのが、VSCodeのデバッグ機能です。

このガイドでは、初心者の方でもすぐに使えるように
VSCodeでのPythonデバッグの方法をコード付きで完全解説
便利な使い方からエラー対処まで、誰でも簡単に再現できる構成で紹介します。


デバッグ機能とは何か?

結論:プログラムの動きを途中で止めて確認できます

プログラムを書く中で「なぜか思った通りに動かない」と感じることは多いです。
そんなときに使うのがデバッグ機能です。VSCodeではこれを簡単に扱えます。

できること

  • 任意の行でプログラムを止めて中身を確認できる
  • 変数の中身をリアルタイムで表示
  • 1行ずつ処理を追いながら実行できる
  • 関数の中の流れも簡単に追える

print文を何行も書かなくても、プログラムの動作が見える化されるのが魅力です。


Python用デバッグ機能の準備

結論:VSCodeとPython拡張機能を入れるだけでOK

Pythonのデバッグを行うには、以下の準備が必要です。

必要なもの

  • VSCode(Visual Studio Code)
  • Python(3.x系)
  • VSCodeの「Python」拡張機能

拡張機能の入れ方

  1. VSCodeを起動
  2. 左側メニューの四角マーク(拡張機能)をクリック
  3. 検索窓に「Python」と入力
  4. Microsoft製の拡張を「インストール」

以上で準備は完了です。


ブレークポイントの使い方

結論:止めたい行の左をクリックするだけで設定できます

ブレークポイントとは、「プログラムを一時停止する位置」のことです。

使い方ステップ

  1. VSCodeでPythonファイルを開く
  2. 停止したい行の行番号左の余白をクリック
  3. 赤い丸がつけばブレークポイントが設定されたことを意味します

その後、「実行とデバッグ」▶️マークでプログラムを実行すれば、指定箇所で止まります。


実際のデバッグ例(コード付き)

結論:エラーが出そうな関数や処理を1行ずつ追えます

1
2
3
4
5
6
7
8
def divide_numbers(a, b):
    result = a / b
    return result
 
x = 10
y = 0  # ここでエラーが起きる
answer = divide_numbers(x, y)
print(answer)

デバッグの進め方

  1. result = a / b にブレークポイントを設定
  2. 変数 ab の値を確認
  3. 例外(ZeroDivisionError)が出る前に止めて対処可能

画面上で確認できる内容

  • 変数一覧(左上の「変数」パネル)
  • 呼び出し履歴(コールスタック)
  • 実行停止位置のハイライト
  • コンソールでの任意の式評価(ウォッチ機能)

よくあるエラーと対処法

結論:起動設定ファイルと環境選択に注意してください

起動できないケース

  • "launch.json"が存在しない場合、デバッグが起動しません
    F5 を押すと自動生成できます

Pythonが実行されない

  • 正しいインタープリタが選ばれていない可能性があります
    → 画面右下の「Python」から選択できます

ブレークポイントが効かない

  • 実行ファイルと編集ファイルが一致していない可能性
    → VSCodeの左上「ファイルを保存」で強制反映

デバッグが必要な理由

結論:デバッグできるかで成長スピードが劇的に変わります

初心者がつまずく多くの問題は「原因が分からないまま進んでしまう」ことです。
VSCodeのデバッグ機能を使えば、次のような力が身につきます。

  • 処理の流れを正しく把握する力
  • エラーの原因を自力で発見する力
  • 問題を自信を持って解決できる力

Pythonを本気で学びたいなら、printではなくデバッグで確認する習慣をつけましょう。


まとめとサンプル構成

結論:VSCodeを使いこなせばPython力が大きく向上します

  • Python初心者こそ、デバッグ機能を早期に使うべきです
  • ブレークポイントで処理の流れを見える化
  • 1行ずつ確認すれば、エラーも怖くなくなります

練習用コード全体(コピペで動作します)

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
def greet(name):
    message = f"こんにちは、{name}さん!"
    return message
 
def add(a, b):
    total = a + b
    return total
 
def main():
    name = "たろう"
    print(greet(name))
 
    x = 5
    y = 3
    print(f"{x} + {y} = {add(x, y)}")
 
if __name__ == "__main__":
    main()

このコードを開き、任意の関数内でブレークポイントを設定して試してみてください。


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