VSCodeでPythonインタープリターを選択・切り替える方法:pyenv・venv・mise対応
はじめに
VSCodeでPythonを使うとき、インタープリターの選択を正しく行わないとコードの実行やlintが期待通りに動きません。
- 複数のPythonバージョンを使い分けている
- プロジェクトごとにvenv(仮想環境)を使っている
- pyenvやmiseでバージョン管理している
この記事ではVSCodeのPythonインタープリターの選択・切り替え方法を解説します。
インタープリターの選択方法
コマンドパレットから選択する
最も基本的な方法です。
Cmd + Shift + P(WindowsはCtrl + Shift + P)でコマンドパレットを開くPython: Select Interpreterと入力して選択- 使いたいPythonを一覧から選ぶ
Python 3.13.2 ('base': conda)
Python 3.11.9 /usr/local/bin/python3
Python 3.13.2 ('.venv': venv) ← プロジェクトのvenv
venvを使っている場合は ('.venv': venv) のように仮想環境名が表示されます。
ステータスバーから選択する
VSCodeの右下のステータスバーにPythonのバージョンが表示されています。クリックするとインタープリター一覧が開きます。
Python 3.13.2 64-bit ← ここをクリック
プロジェクト別にインタープリターを設定する
settings.json に記述する
.vscode/settings.json に設定を書くと、そのプロジェクトで自動的に使われます。
{ "python.defaultInterpreterPath": "${workspaceFolder}/.venv/bin/python" }
${workspaceFolder} はVSCodeで開いているフォルダのパスに自動で置き換わります。チームで同じ設定を共有したい場合は .vscode/settings.json をgitに含めます。
venv(仮想環境)と組み合わせる
プロジェクトルートに .venv を作成している場合、VSCodeが自動で検出してくれることがあります。
# 仮想環境を作成 python3 -m venv .venv # VSCodeを開き直すか、コマンドパレットからインタープリターを再スキャン
検出されない場合は「インタープリターのパスを入力」を選んでパスを直接指定します。
/path/to/project/.venv/bin/python
pyenvと組み合わせる
pyenvでPythonを管理している場合、pyenvのインタープリターが一覧に表示されます。
# pyenvでインストール済みのバージョン確認 pyenv versions # system # 3.11.9 # * 3.13.2 (set by ~/.pyenv/version) # プロジェクトのバージョン設定 pyenv local 3.11.9
.python-version ファイルが作成されると、VSCodeはそのバージョンを優先して表示します。
pyenvのインタープリターのパスは通常以下の形式です。
~/.pyenv/versions/3.11.9/bin/python
miseと組み合わせる
miseでPythonを管理している場合も同様に検出されます。
# プロジェクトのPythonバージョンを設定 mise use python@3.13.2
.mise.toml が作成された状態でVSCodeを開くと、miseが管理するPythonが一覧に表示されます。
miseのインタープリターのパスは以下の形式です。
~/.local/share/mise/installs/python/3.13.2/bin/python
よくある問題と対処法
インタープリターが一覧に表示されない
Python拡張機能がインストールされていない
VSCodeの拡張機能から「Python」(Microsoft製)をインストールしてください。
パスを直接指定する
一覧に表示されない場合はパスを手動で入力します。コマンドパレットで Python: Select Interpreter を開き、「インタープリターのパスを入力...」を選択します。
# インタープリターのパスを確認 which python3 # /usr/local/bin/python3 # pyenvの場合 pyenv which python # /Users/username/.pyenv/versions/3.13.2/bin/python
選択したはずなのに反映されない
VSCodeを再起動するか、ウィンドウのリロード(Cmd + Shift + P → Developer: Reload Window)を試してください。
lintやimportが赤くなる
インタープリターが正しく設定されていても、パッケージが仮想環境にインストールされていない場合があります。
# 仮想環境を有効化してパッケージをインストール source .venv/bin/activate pip install -r requirements.txt
インストール後、VSCodeのインタープリターが .venv を指していることを確認してください。
まとめ
| 操作 | 方法 |
|---|---|
| インタープリターを選択 | Cmd + Shift + P → Python: Select Interpreter |
| ステータスバーから選択 | 右下のPythonバージョンをクリック |
| プロジェクト設定に保存 | .vscode/settings.json に python.defaultInterpreterPath を記述 |
| パスを直接指定 | 「インタープリターのパスを入力...」から手動入力 |
Pythonのバージョン管理ツールについては「Pythonのバージョン管理:pyenv・miseの使い方と切り替え方法」を参照してください。
ディレクトリに入ったときにvenvを自動で有効化するには「direnv入門:ディレクトリごとに環境変数を自動で切り替える」を参照してください。
VSCodeのショートカットや設定のまとめは「VSCodeチートシート:ショートカット・settings.json・言語別セットアップまとめ」を参照してください。