VSCode×Python拡張機能で仮想環境を一目で管理しよう

VSCode×Python拡張機能で仮想環境を一目で管理しよう

はじめに

DTダイナミクスで板金の形状処理の開発を担当している陳です。 今回は、Pythonの仮想環境管理に便利なVisual Studio Code(以下、VSCode)のPython拡張機能についてご紹介します。

Pythonで開発をしていると、「あるプロジェクトではAというライブラリのバージョン1.0が必要だけど、別のプロジェクトではバージョン2.0が必要」といった場面に必ず出会います。また、さまざまなライブラリをインストールしているうちに環境がごちゃごちゃになり、「あれ、昨日まで動いていたのに…」というトラブルも起こりがちです。

そんなときに役立つのが仮想環境です。

仮想環境とは、「プロジェクトごとに独立したPythonの環境(パッケージやバージョン)を作る仕組み」です。 これを使えば、他のプロジェクトに影響を与えず、自分専用の安全な開発空間を手に入れることができます。

仮想環境はPythonの開発で非常に便利ですが、Pythonには多種多様な仮想環境ツール(venv、pipenv、uvなど)があり、プロジェクトごとに異なる環境が混在しやすくなっています。そのため、どの仮想環境を使っているか把握・管理するのは意外と手間がかかります。

そこで役立つのが、Visual Studio Code(以下VSCode)のPython拡張機能です。VSCode上で仮想環境の切り替えや選択が簡単にでき、現在どの環境を使っているか一目で分かるため、複数プロジェクトを扱う開発者にとって非常に便利です。


Visual Studio Code の Python 拡張機能

近年、Pythonの開発環境として人気が高まっているのがVSCodeです。その人気の理由の一つが、公式のPython拡張機能(Python Extension)による強力なサポートです。

この拡張機能はMicrosoftが公式に提供しており、こちらから入手できます。インストールするだけで、VSCodeが本格的なPython開発環境に早変わりします。

Python拡張機能でできること

  • 仮想環境の自動認識・切り替え
    • venvやpipenv、uvなどで作成した仮想環境を自動で検出
  • シンタックスハイライト
    • Python特有の構文をカラフルに表示し、コードの可読性を向上
  • コード補完
    • 変数名や関数名を自動補完し、素早くコーディング可能
  • デバッグ機能
    • ブレークポイントやステップ実行をGUIで簡単に操作
  • コードフォーマット・Lint
    • Blackやautopep8による自動整形、flake8/pylintによる静的解析
  • Jupyter notebook連携
    • VSCode上でJupyter notebookをそのまま編集・実行可能

今回は、Python拡張機能を活用することで、Pythonの仮想環境管理がとても簡単になる点に注目します。


VSCodeのPython拡張機能で仮想環境を一目で把握

実際のVSCodeでは、Python拡張機能の画面左下に、現在のプロジェクトで参照できるPython環境の一覧が表示されます。 Python 拡張機能画面

Python拡張機能では、作業中のプロジェクトに作成した仮想環境だけではなく、グローバルなPython環境も確認することができます。さらに、各環境にインストールされたライブラリも確認することができるため、仮想環境の状況を一目で把握することができます。 Global な環境と仮想環境

画面上での仮想環境の管理

また、Python拡張機能では、画面上で仮想環境の管理ができます。各Python環境の上にマウスカーソルを置くと、 - 仮想環境のパスをコピー - 仮想環境を適用したターミナルを実行 - 仮想環境のライブラリを管理 - 仮想環境を現在のプロジェクトに適用

を行うアイコンが出現します。 仮想環境GUI

特に、ライブラリの管理からは、直接ライブラリをインストールすることができます。 GUIからmatplotlibをインストール

インストールされたライブラリを、画面上で確認することも可能です。 インストール後

このように、画面上で仮想環境の管理ができるため、コマンドでのPythonの環境構築に自信がない方にも利用しやすい拡張機能になっています。


終わりに

Pythonの仮想環境管理は、開発の効率や安全性を大きく左右します。VSCodeのPython拡張機能を活用すれば、複雑になりがちな仮想環境の切り替えや管理も直感的かつ簡単に行えます。ぜひ本記事を参考に、快適なPython開発環境を手に入れてください。