VScode Python 拡張:インタプリタのセットアップ、venv conda 仮想化の有効化、自動実行
Visual Studio Code、略してVSCodeは、マイクロソフトによって作られ、世界中の無数の拡張開発者によって育てられてきた、最も人気のあるIDEである。 VSCodeは拡張機能によってあらゆる言語をサポートし、柔軟でオープンだ。高速で、何よりも無料である。
あらゆる言語の中で、VscodeのPythonのサポートは最も信頼性が高く、便利な拡張機能を見つけるのも簡単だ。 PyCharmのように、Python専用に作られたIDEにはないものもあります。 開発者の注目を集めるために、常に新しい拡張機能が登場しています。
これだけの利点がありながら、vscodeでPython開発を始めるのに必要な拡張機能は1つだけです。
これは以下に示すPythonエクステンションです。
1. vscode Pythonエクステンションのインストール
vscodeのExtensionsタブをクリックし、python
を検索し、最初に表示された拡張機能をインストールします。
Microsoftのものであることを確認してください。インストールが完了すると、Extension Preferencesタブが自動的に開きます。
最後に、Jupyter Notebookエクステンションもインストールします。まずはPython言語の設定から。
2. Pythonインタプリタの設定
Pythonインタプリタの選択**ボタンをクリックすると、コンピュータにインストールされているPythonインタプリタの一覧が表示されます。 必要なバージョンを選択してください。
Pythonのインストールの詳細については、ダウンロードとインストール(Mac)または ダウンロードとインストール(Win) を参照してください。
必要なPythonインタプリタがリストにない場合は、リストの一番上にあるEnter interpreter pathという項目を使ってパスを追加してください。
このページで設定しなかった場合は、コマンドパレットを開き、`python interpreter'と検索することで見つけることができます。
Pythonファイルを開き、必要なバージョンのPythonに設定されていることを確認してください。 公式のPython拡張機能のおかげで、Pythonファイルを実行するのは簡単だ。
3. Pythonファイルの実行
以下のコードは、現在実行中のPythonインタプリタの絶対パスとバージョンを表示します。
右上の Play ボタンをクリックするか、キーボードで F5
を押してください。
良いコードであれば、Vscode内のターミナル・ウィンドウに実行結果が表示されるはずだ。 私はMacネイティブのPythonを選び、以下の結果を得た。
4. venvとcondaの仮想環境を有効にする
私たちのマシンにインストールされている様々なPythonインタプリタは、それぞれ独自の仮想環境を持っています。 その名前からDockerやVMのように聞こえますが、実際にはインタープリタとその関連パッケージを一緒に呼び出す方法に過ぎません。
例えば、2つのプロジェクトで同じインタープリターを使うとしよう。 両方のプロジェクトで使うパッケージを1つのVMにインストールすると、プロジェクトごとに無駄なパッケージがたくさんできてしまう。 そこで、プロジェクトごとに仮想マシンを作って、本当に必要なパッケージだけをインストールする。
Vscodeは仮想環境を作るのに2つの方法をサポートしている。
1つ目は標準Pythonライブラリに含まれるvenv
パッケージを使う方法、2つ目はAnacondaやMinicondaディストリビューションに含まれるCondaパッケージマネージャーを使う方法だ。
一つずつ見ていこう。
4.1. venvによる仮想マシンの作成
まず、venvを作成したいプロジェクトディレクトリをVscodeのopenフォルダで開きます。
次にコマンドパレットを開き、create python environment または python environment を検索します。 以下のようなエントリーが表示されます。
これをクリックすると、venv
と conda
のどちらかを選べるウィンドウが開く。venv
を選んでください。
最後に、仮想環境で使用するインタプリタをリストから選択する。
Vscodeが勝手に新しい仮想環境と最小限のパッケージをインストールしてくれます。
読み込みが終わると、Vscodeの右下に.venv
フォルダが作成され、専用のインタプリタがセットアップされているのが見えるでしょう。
.venv フォルダ | インタープリター |
---|---|
![]() | ![]() |
4.2. CONDAによる仮想環境の作成
仮想環境の作成は venv と同じです。
プロジェクトフォルダを開き、コマンドパレットから Create Python Environment
を探してクリックします。
ここでは Conda を使うので conda
を選択する。
まだVscodeとCondaを接続していない場合、次のようなエラーメッセージが表示されます。
VscodeとCondaを接続するには、あなたのマシンが使っているCondaへのパスを見つける必要があります。 Condaの代わりにコミュニティ版のMambaを使うこともできます。
Mambaforgeの代わりにMicromambaをインストールした場合は、別途Vscode拡張機能 Micromamba (opens in a new tab)をダウンロードしてインストールしてください。
手順も若干異なります。コマンドパレットの`Micromamba: create environment'アクションを使って仮想環境を作成します。
ターミナルで、which conda
またはwhich mamba
コマンドを入力する。
見つけたパスをVscodeに入力する。
コマンドパレットのSettings (UI) を開き、conda
を検索します。
Python: Conda Pathの項目に、上で取得したパスを入力する。
私はCondaの代わりにMambaを使った。
Create Environmentに戻り、condaのエントリーをクリックすると、次のステップに進み、インタプリタのバージョンを選択するよう求められます。
希望のバージョンを選択すると、Condaベースの仮想環境が作成されます。右下の .conda
フォルダとインタプリタのバージョンを確認してください。
.conda フォルダ | インタープリター |
---|---|
![]() | ![]() |
4.3. Vscode 端末から自動的に仮想環境を有効にする
仮想環境を使う主な理由の1つは、パッケージをインストールすることです。
パッケージのインストールはターミナルで pip
コマンド (venv を使用) または conda
コマンド (Conda を使用) を使用して行います。
以前は、パッケージをインストールするためにターミナルで以下のコマンドを入力して手動でVMを有効にする必要があった。
venv
:source .venv/bin/activate
を実行する。Conda/Mamba
:conda activate ./.conda/envs/default
(仮想環境の名前によっては、これはdefault
ではないかもしれません)。
今のところ、Vscode はあなたの仮想環境を自動的に検出し、新しいターミナルを作成するときはいつでもあなたのためにそれをアクティブにします。 必要なのは以下の設定だけです。 コマンドパレットの設定(UI) を検索してウィンドウを開いてください。
設定の検索ボックスにpython terminal
と入力すると、このように表示されます。
チェックすべき設定は2つあります: Env In Current Terminal と Enable Environment です。
これはユーザーとワークスペースの両方で行えます。
これで、Pythonファイルに戻って新しいターミナルを開くと、現在の仮想環境のインタプリタが自動的にアクティブになります。
新しいターミナルは Vscode がうまく認識できるように .py
で終わる Python ファイルから開く必要があります。
ターミナルから、現在アクティブな仮想化でのみ使用されるパッケージをインストールできるはずです。
5. Jupyterノートブックを使う
Microsoftが拡張機能としてJupyter Notebookをサポートしたことで、vscodeの中でブラウザを開かずにノートブックを使うことができるようになりました、
をサポートしたことで、ブラウザを開かずにvscode内でノートブックを使うことができるようになりました。
JupyterエクステンションはPythonエクステンションと一緒にインストールされます。
インストールされていない場合は、Jupyter
で検索し、Microsoftがサポートしているすべての拡張機能をインストールしてください。
コマンドパレットでjupyter
を検索し、新しいノートブックを作成する。
新しいノートブックを開いたら、現在のノートブックのカーネルを設定する必要がある。
カーネルとは、ノートブックに書いたコードブロックの中で、コードの実行を待つエンジンのことです。
現在2つのオプションがあります
VscodeにDocker
やCodeSpace
のような拡張機能をインストールすると、選択肢が増えます。
**Python environment...**は、上で作成した仮想環境のことです。
仮想環境を選択すると、IPyKernal
パッケージが勝手に実行されてカーネルが起動される。
**Existing Jupyter server...**オプションは、既にJupyterサーバーが動作している場合に選択します。とりあえず、私たちが作成したものを選択してください。
うまくいけば、カーネル名がノートブックの右上に表示されます。
これで pip
か conda
を使って必要なパッケージをインストールし、ノートブックを使うことができる。
6. 結論
Vscode は公式サポートを通して Python の開発を簡単で直感的なものにし続けてくれています。 このおかげで、VscodeでのPython開発が初めてでも、基本的なセットアップから仮想環境の作成、Jupyterノートブックの使い方までついていくのは難しくありませんでした。
vscodeはあなたのPython開発の旅の間、あなたのためにたくさんの仕事をするのを待っています。 開発中に使用しているIDEAの機能に注意を払えば、その努力は開発生産性の向上という形で報われるでしょう。 これからも私の考えを投稿していきたいと思います。
