@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](https://qiita-user-contents.imgix.net/https%3A%2F%2Fqiita-image-store.s3.amazonaws.com%2F0%2F196428%2F36a10085-fb00-7c8c-0361-f9b660ca4024.png?ixlib=rb-4.0.0&auto=format&gif-q=60&q=75&s=788aa1fd2fff33ffe2ae41d9c67ad780)
こちらの方法で起動すると、VSCodeはterminalの中の全ての環境変数を継承しますので、Python仮想環境も有効化になります。
意外と簡単にできたが、結構ハマりました。