VS Code の Python 開発環境を整える for macOS and Windows
仕事でちょっと Jupyter Notebook とか触るようになったので、素の Python 開発環境も構築して Python 力高めたいなあということでやってみました。
ちょっと前は何も考えずに Anaconda 入れてしまうレベルだったので、このあたりから読んで心を入れ替えました。
これ読んで Windows でも mac でも苦労なく Jupyter 環境が構築できました。
しかし Trac を触ってた頃から比べると Python のツールチェインも随分様変わりしましたねえ・・。
Python をインストールすると
$ python -m venv <environment directory>
で、venv という OS にインストールされた Python 環境とは隔離された仮想的な Python 環境が手に入ります。仮想といっても VM のようなヘビーなものではなく Python インタープリタやライブラリ環境をフォルダ単位で隔離している程度 (Node.js でいうとプロジェクトの node_modules に node / npm も入っているイメージ) で pyenv とやってることはそんなに変わらなそうです 。ただ、サードパーティではなく Python 標準で提供されているところが正義です。
venv ではターミナルのプロンプトが
(env) $
のように分かりやすい表示になります。
VS Code では、Microsoft 公式の Python 拡張が提供されていますのでインストールします。
VS Code ではプロジェクト単位(workspace 単位) に設定をカスタマイズできます。Python のプロジェクトディレクトリで、venv を作成します。
$ python -m venv env
プロジェクトの Python ファイルを開くと、Python 拡張が導入されていれば Python 環境を選択するプロンプトが表示されますので venv の Python を選びます。

workspace の .vscode/settings.json を直接編集する場合、macOS では次のように python.pythonPath を設定します。
{ "python.pythonPath": "${workspaceFolder}/env/bin/python" }
Windows でも同様です。
{ "python.pythonPath": "${workspaceFolder}\\env\\Scripts\\python.exe", "terminal.integrated.shell.windows": "C:\\WINDOWS\\System32\\WindowsPowerShell\\v1.0\\powershell.exe" }
Windows で統合ターミナルに Git for Windows (MSYS2) の bash を指定していると Python の REPL がうまく動かないし cmd.exe は辛いので PowerShell を指定してます。

ステータスバーに Python 環境が ('env': venv) のように表示されていれば OK です。
統合ターミナルで Python 使うには、macOS なら
$ . env /bin/activate
Windows なら
PS> .\env\Scripts\activate
で起動する必要があります。これがちょっと面倒かな。venv に入って pip install で numpy など必要なパッケージをインストールしていきます。requirements.txt を追加して必要なパッケージとバージョンを管理することもできます。npm init で package.json が作成される Node.js と比べるとツールがこなれてない感ありますが・・。
Python 拡張で色々コマンドが使えます。

F5 で普通にデバッグできます。

ということで VS Code 上に割と快適っぽい Python 開発環境が構築できました。