この章では、最低限覚えておきたいことに絞って、エディタVisual Studio Code(以下VS Code) を使ったPythonプログラムの修正(デバッグ)方法について解説します。
VS Code 画面の構成
まず画面の構成を理解しましょう。
①アクティビティバー
主に使用する機能がアイコンで表示されている。
②サイドバー
選択したアクティビティバーの内容が表示される。
③エディター
プログラムを記述するエリアです。
④パネル
Pythonの実行コマンドの入力やプログラムの処理結果が表示される。
また、警告やエラー内容、デバック情報などもここで表示されます。
⑤ステータスバー
起動しているPythonのバージョン(左側のPython3.9.2-64bit)や文字コード(右側のUTF8)などが表示されます。
切り替えも可能です。
プログラムのデバッグ作業の流れ
プログラムの作成
以下のサンプルプログラムをVS Codeの③エディターにコピペし、ファイル名(~.py)をつけて保存する。
msg = 'hello, python World' print(msg) msg = 'プログラム終了' print(msg)
デバッグモードの切り替え
VS Code画面の「実行とデバッグ」ボタン(赤丸)を押す。
すると、②サイドバー(赤四角)がデバッグモードに切り替わります。
上部の緑▷ボタンが、デバッグモードでプログラムを実行させるボタンです。
②サイドバー中央に変数・ウォッチ式・コールスタック・ブレークポイントが表示されていない場合は、上部の「・・・」メニューを開いてそれぞれにチェックを入れて表示させます。
ブレークポイントの設定
プログラムを途中で停止させてプログラムの動作を確認する場合、ブレークポイントを設定します。
③エディターのプログラム行番号の左側にマウスをあてると薄い赤●が表示され、そこをマウスクリックすると、ブレークポイント(濃い赤●)を設定できます。
(下の画面では3行目にブレークポイントが設定されています)
デバッグモードでプログラム実行
①デバッグモード実行ボタンを押す。
すると、②デバッグ用ツールバーが表示され、プログラムが1行目から実行、③ブレークポイントの位置で停止します。(この時、ブレークポイントの行のプログラムは実行せずその手前で停止)
④変数のところには、msg変数に格納されている値が表示されます。
このように、プログラムがここまで正常に動作しているのかどうかを確認することができます。
キー | 機能 |
![]() |
続行(F5キーに同じ):次のブレークポイントまで実行 |
![]() |
ステップオーバー(F10):1行だけ実行(関数に入らない) |
![]() |
ステップ・イン(F11):1行だけ実行(関数に入る) |
![]() |
ステップアウト(Shift + F11) :呼び出し元まで戻る |
![]() |
再起動(Ctrl + Shift + F5) :最初から再実行 |
![]() |
停止(Shift + F5):実行の停止 |
プログラムのエラー表示
プログラムのエラーには以下の2種類があります。
VS Codeではそれぞれどの様にエラー表示されるのかを解説します。
2種類のエラー
・構文エラー(SyntaxError):文法の誤りによるエラー。
・例外(Exception):文法の誤りではないが、プログラムが何らかのエラーがある。
文法的誤り(Syntax Error)
例えば、上記サンプルプログラムの5行目が、以下の様な記述になっていたとします。
これは「プログラム終了」の文字列がシングルクォーテーションで括られていない(右側の ' がない)ため、文法の誤りになります。
msg = 'プログラム終了 ←最後にシングルクォーテーション(')がない
このプログラムをデバッグモードで実行すると、プログラムは1行目から実行されず、ターミナルにエラーメッセージが表示されます。
内容は以下の通りです。
5行目に文法的な誤りがあることが分かりますので、このエラーメッセージを確認してプログラムを正しく修正します。
File "c:\Biz-IT\python_pgm\sample-2-1_1.py", line 5
msg = 'プログラム終了
^
SyntaxError: EOL while scanning string literal
例外(Exception)
例えば、上記サンプルプログラムの7行目の変数msgが誤記によりms(gが欠けている)になっていたとします。
この7行目だけを見れば特に文法的な誤りはありません。(変数msに格納された値をprintするという記述方法は文法的には問題なし)
しかし、プログラム全体で見ると、変数msが定義されていないため、プログラム実行中にエラーが発生します。
この場合、エラーがある行でプログラムが実行停止し、エラーメッセージがその行の下に表示されます。
このエラーメッセージを確認してプログラムを正しく修正します。
以上がVS Codeを使ったプログラムのデバッグで最低限覚えておきたい機能です。