こんにちは、ロジカル・アーツの笹原です。
最後に(そして最初に)記事を投稿してから既に一年以上が経過してしまいました。。生存報告も兼ねて、今回は VS Code の開発環境の設定についてお伝えしたいと思います。
はじめに
これまでは割と力づくで強く意識することなく開発を行ってきましたが、最近ようやく、開発環境を整えて効率を上げることに関心が向き始めました。その第一弾として、表題の通りですが、Python の仮想環境を VS Code で扱う手順を紹介したいと思います。
以下の手順で扱う環境は次の通りです:
- OS は Windows 10
- Python のバージョンは 3.7.4
- VS Code のバージョンは 1.55.1
- Python の拡張機能をインストール済み
なお、第一弾とは書きましたが、第二弾以降の記事が書かれるかは今のところ不明です。
準備
下記の前提のもとで、設定作業を行っていきたいと思います。
項目 | 内容 |
---|---|
作業ディレクトリ | python-venv |
仮想環境名 | .venv |
インストールパッケージ* | Flask |
検証用ファイル名 | test.py |
* インストールするパッケージは何でもよいのですが、後の確認のため、グローバルにインストールされていないものを選択しています。私の環境では Flask
がこれに該当します。
以下に簡易な手順と、参考画像を載せておきます。
仮想環境の作成
作業ディレクトリ python-venv
を用意し、仮想環境 .venv
を作成します。作成方法は例えば、コマンドプロンプトを開き、カレントディレクトリが python-venv
の状態で、python -m venv .venv
を実行します。以下の画像では、VS Code のターミナルで実行しています。
仮想環境への切り替え
コマンドプロンプトで行う場合は、仮想環境下にある Scripts\activate.bat
を実行します。Powershell の場合は Scripts\Activate.ps1
を実行すればよいのですが、別途設定作業が必要な可能性があります。詳細は以下の記事を参照してください。
Flask のインストール
仮想環境に切り替わったら、pip install Flask
で Flask
をインストールします。
検証用ファイルの作成
作業ディレクトリ(python-venv
)直下に test.py
を作成し、from flask import Flask
を追記します。このとき、以下のようなエラーが表示されると思います。
現時点では、Python のインタプリタは仮想環境のものに設定されていません。これからその設定手順を見ていきたいと思います。
設定方法
VS Code を起動した状態で、Ctrl + Shift + P
を押し、コマンドパレットを開きます。python: select
と入力し、Python: Select Interpreter
をクリックします。
Enter interpreter path...
をクリックし、続いて Find...
をクリックします。
エクスプローラーが起動するので、仮想環境にある python.exe
を選択し、「インタープリターを選択」をクリックします。
一度 VS Code を閉じ、再度開きます。すると、先程までのエラーが消え、flask
にカーソルを当てるとクイックインフォが表示されるようになりました!
上の画像だと見辛いですが、VS Code のウィンドウの左下を見ると、仮想環境に切り替わっていることが確認できます。
Appendix: pythonPath を使用した設定方法
実は手順を調べていた時は、主にこの pythonPath
を使用した方法が見つかったのですが、自分の環境で試そうとしたところ、以下の画像のメッセージが出てきて設定出来ませんでした。
そこからいろいろ試して上で紹介した方法に辿り着いたわけですが、 pythonPath
を使用しても設定できる方法が分かった*1ので、ついでに紹介したいと思います。
A/B テストをオプトアウトする
VS Code を起動した状態で、Ctrl + ,
を押し、設定画面を開きます。入力欄に python.experiments
と入力し、Python › Experiments: Enabled
の下のチェックを外します。
pythonPath の設定
今度は Ctrl + Shift + P
を押し、コマンドパレットを開きます。settings
と入力し、Preferences: Open Workspace Settings (JSON)
をクリックします。
表示された settings.json
に以下の情報を追記します:
"python.pythonPath": "{仮想環境のインタプリタのパス}"
パスは、ワークスペース(作業ディレクトリ)からの相対バスでいいようです。本記事の状況だと .venv/Scripts/python.exe
となります。
インタプリタの切り替え
VS Code を一度閉じ、再度開きます。Ctrl + Shift + P
を押してコマンドパレットを開き、Python: Select Interpreter
をクリックします。すると、以下の画像のように pythonPath
で指定したインタプリタが候補として表示されます。
これをクリックすることで、先程と同じように仮想環境に切り替わります。
おわりに
このような開発環境の準備は、今まさに取り組んでいる最中ですが、きちんと用意することで後続の開発がぐっと楽になるのではないかと思います。(そしてそうなることを期待しています。)ゆくゆくは様々な方法を紹介していきたのですが、これも*2いつになることやら。。
参考リンク
*1:苦労した雰囲気を醸し出してますが、実際のところはメッセージにある Learn more のリンク先をよく読めばほとんど書いてあります。。
*2:冒頭に挙げた最後(最初)に投稿した記事にも、似たようなあとがきがありました(笑)