■ はじめに
VisualStudio Code (以下、VS Code)は Python の仮想環境 venv/vitualenv にも対応しています。特に設定で指定しなくても特定のディレクトリ配下の仮想環境を読み込みます。この記事ではそのパスの確認をします。
環境
デフォルトで読み込まれるパス
以下の 4 箇所です。
- 設定
setting.json
のpython.venvFolders
で指定されているデフォルト値~/envs
配下~/.pyenv
配下~/.direnv
配下
- ワークスペースディレクトリ配下の
.venv
など(ディレクトリ名は任意)
参考
デフォルト設定
// Folders in your home directory to look into for virtual environments. "python.venvFolders": [ "envs", ".pyenv", ".direnv" ]
Where the extension looks for environments
Virtual environments located directly under the workspace (project) folder.
お試し
実際に読み込まれることを試してみます。
仮想環境の作成
まず、対応する 4つの仮想環境をを作ります。
$ python3 -m venv ~/envs/envs01 $ python3 -m venv ~/.pyenv/pyenv01 $ python3 -m venv ~/.direnv/direnv01 $ python3 -m venv .venv # ワークスペースディレクトリ上
確認
VS Code でワークスペースディレクトリ( .env
を含むディレクトリ)を開きます。
次に、⌘ command
+ ⇧ shift
+ P
コマンドパレットを開き、Python: インタープリターを選択
を選択します。
以下のように、4 つの環境が認識されてていることが確認できます。
ここでは、代表して envs01
を選択します。
左下の 使用インタプリターの表示で envs01
が選択されていることが確認できます。
この状態で統合ターミナルを起動すると、自動で該当の activate
コマンドが実行され、仮想環境に入った状態になります。
デバッグ時もこの仮想環境で実行されます。
まとめ
VS Code がデフォルトで読み込む Python の仮想環境のパスを確認しました。
もちろん setting.json
の python.venvPath
で明示的に指定しても良いですが、なるべく設定を変更したくない場合は、デフォルトで読み込まれるパスを活用すると良いと思います。