Edited at

virtualenvのPython仮想環境をVisual Studio Codeにも有効させる

More than 1 year has passed since last update.

@gtracker64 さんからもっと簡単な方法を頂きました。ありがとうございます。


VSCodeの設定(setting.json)で、python.pythonPathまたはpython.venvPathあたりを設定する方法もある。

https://code.visualstudio.com/docs/python/environments



はじめに

virtualenvはフォルダごとのPython仮想環境が作れます。非常に重宝にしています。Visual Studio Codeは、普段フロントエンド開発で使っていますが、PythonのIDEとしてもPluginさえインストールすれば、Lint、ソース自動整形などが備えて結構便利です。

しかし、virtualenvで仮想環境を有効化しても、VSCodeでソースコードを開いたら、色々なエラーが出ます。


なにか問題なの?

VSCodeがPython仮想環境を認識できない理由は、source env/bin/activateで有効化したvirtualenvの環境変数がVSCodeがわからないです。


どう解決するの?

環境変数を認識させれば済みます。

terminalの中で、Python仮想完了を有効化してからVSCodeをそのterminalから起動させる。

$ cd my-python-env

$ source my-python-env/bin/activate
$ code

いきなり、codeを実行してもVSCodeが起動しない場合、codeコマンドをpathに追加する作業が必要です。

以下のように、VSCodeの中でコマンド一発でOK。

vscode.png

こちらの方法で起動すると、VSCodeはterminalの中の全ての環境変数を継承しますので、Python仮想環境も有効化になります。

意外と簡単にできたが、結構ハマりました。:sweat: