日々ブログ

当サイトは、アフィリエイトプログラムにより商品をご紹介しています

【プログラミングのお話】windowsでvenvを使用する

pythonのメジャーアップデートに伴い、python自体にvenvが標準で組み込まれるようになりました。
一昔前までは、linux向けというイメージが強かったのですが。
個人的には、venvで環境を作るのが好きなので、windowsでの利用方法をまとめたいと思います。

venvとは

venvはランタイムを仮想化する技術です。 pythonインタプリタとそれに付随するライブラリを他の環境から独立させたい場合に使います。
たとえば、プロジェクトAとプロジェクトBといった2つのプロジェクトを担当する場合を考えます。
プロジェクトAでは、バージョンが2.3.1のnumpyが必要で、プロジェクトAでは旧いバージョン1.26.1が必要な場合に、これを一つのPCにインストールするのはめちゃくちゃしんどいです。
きちんと管理しなければ、プロジェクトBで新しい方を使って開発してしまって、ほかの人の環境ではエラーが生じるといった事態になりかねません。
パスをしっかりと区切ればいけないことも無いのですが非常に手間です。
venvを使えばそれぞれの環境を独立に作成することができ、互いに影響を与えないのでこうした場合に非常に便利になります。

python --version でPythonとなる場合

windowspythonをインストールした場合によく起こることなのですが、pythonのバージョンを確認確認するコマンド「python --version」を実行すると、「Python」と返ってくることがあります。

コマンドラインに対してパスを正しく通せていないのが原因です。
この現象は、アプリ実行エイリアスをオフにすることで解消できます。
スタートメニューから「アプリ実行エイリアス」と検索します。

python.exeとpython3.exeをオフに変更します

このあと、環境変数python.exeが保管されているフォルダを登録すれば、コマンドラインからpythonを実行できるようになります。

実行するとこうなります。

パスが通ればvenvはすぐできる

pythonを実行できる環境が出来上がれば、あとはlinuxと同じです。 下記コマンドを実行すると仮想環境を作成できます。

python -m venv venv

venvのフォルダ内に生成されたbatファイルを実行すれば仮想環境を実行できます。

.\venv\Scripts\activate.bat