投稿日:2020年11月6日
VSCodeは最近人気のエディタです。このエディタは非常に便利なのですが、IDEと違い細かい設定を自分でする必要があります。プログラミングの学習、開発にはDebugが必要不可欠です。この記事ではVSCodeでPythonのDebug環境を構築する方法について解説しています。
VSCodeは最近人気のエディタです。
このエディタは非常に便利なのですが、IDEと違い細かい設定を自分でする必要があります。
プログラミングの学習、開発にはDebugが必要不可欠です。
この記事ではVSCodeでPythonのDebug環境を構築する方法について解説しています。
この記事では以下の環境を前提としています。
VSCodeでのデバッグにはMicrosoftのPython Extensionが必要になります。
左のメニューの『拡張機能』をクリック、またはCtrl + Shift + xを打ち込み、ms-python.pythonを検索して出てくる拡張機能をインストールしましょう。
作業ディレクトリをVSCodeで開きます。
作業ディレクトリの下に.vscodeディレクトリ、そしてその中にlaunch.jsonがあるかどうか確認します。
.vscode/launch.jsonがある場合には【.vscode/launch.jsonの作成】はスキップしてください。
VSCodeの左メニューから『実行』をクリック、またはShift + Ctrl + Dを打ちます。
実行メニューを開けたら、『実行とデバッグ』、または『launch.jsonファイルを作成します』をクリックします。
設定のテンプレートの選択に入ります。
何をデバッグしたいかを基準に選択しましょう。
今回はシンプルな構成のPython Fileを選択してみます。
次の様な設定ファイルが作成されると思います。
{
"version": "0.2.0",
"configurations": [
{
"name": "Python: Current File",
"type": "python",
"request": "launch",
"program": "${file}",
"console": "integratedTerminal"
}
]
}
必要なプロパティの設定が記述された設定ファイルです。
実際にデバッグしてみます。
サンプルのファイルを作成します。
print("hello world")
つぎにprint("hello world")
にブレークポイントを設置します。
設置したい行の右端をクリックして赤丸が付けば完了です。
メニューの実行をクリック、またはショートカットキーCtrl + Shift + dを打ちます。
デバッグの設定ファイルを選択し、再生ボタン▶をクリックします。
デバッグの設定ファイルの名称はlaunch.jsonのconfigurations.nameの値です。
以下のようなデバッグ画面が表示されるはずです。
virtualenvなどの仮想環境を使用している場合、使用環境の対象がホストマシンに入っている方のPythonになってしまう場合があります。
launch.jsonはpythonPathで対象のpythonを指定でき、これで仮想環境のpythonを指定すれば問題を解決できます。
ここではvirtualenvでmyvenvという名前の仮想環境を作成した場合の例を載せておきます。
まずは仮想環境のpythonのパスを調べます。
$ source myvenv/bin/activate
(myvenv) $ which python
/home/ogihara/sample_dir/myvenv/bin/python
この値をlaunch.jsonに設定してあげます。
{
"version": "0.2.0",
"configurations": [
{
"name": "Python: Current File",
"type": "python",
"request": "launch",
"program": "${file}",
"console": "integratedTerminal",
"pythonPath": "/home/ogihara/sample_dir/myvenv/bin/python"
}
]
}
これで仮想環境の設定はOKです。
絶対パスでも良いですが、作業ディレクトリのパスを取得する変数が用意されているのでこれを利用すると、より管理しやすいと思います。
今回の場合、/home/ogihara/sample_dirが作業ディレクトリであるため、これを置き換えます。
"pythonPath": "${workspaceFolder}/myvenv/bin/python"