はじめに
今日はPythonのvenv(仮想環境)についてです。venvって何?どうやって使うの?って疑問に答えていきます。
venvとは
venvは手軽に仮想環境を作成・管理できる、Pythonのライブラリの一つです。Pythonの仮想環境を作成するための軽量な仮想環境の作成を行ってくれます。
また、venvはPythonバージョン3.3以降の標準ライブラリとして提供されており、バージョン3.3以降のPythonをインストール済みの方はvenvを別途インストールすることなく利用可能です。
venvのメリットって?
続いて、venvのメリットを見ていきましょう。
-
プロジェクトごとに環境を分けられる
例えば、あるプロジェクトではPython 3.8を使っていて、別のプロジェクトではPython 3.9を使いたいなんてことがありますよね。venvを使えば、各プロジェクトごとに異なるPythonのバージョンやパッケージを管理できるので、干渉してしまう...という困り事を解消できます。 -
依存関係の管理が楽
複数のプロジェクトで同じパッケージを違うバージョンで使うこともよくあります。venvを使えば、それぞれのプロジェクト内に依存関係を隔離して管理できるので、他のプロジェクトに影響を与えずにパッケージをインストールできます。 -
クリーンな開発環境
仮想環境を使うことで、PC本体のPython環境を汚さずに済みます。開発が終わったらその環境ごと削除するだけなので、システム環境がすっきり保てます。
使い方
さて、venvの使い方を見ていきましょう。手順はとっても簡単です。
-
仮想環境の作成
まずはプロジェクトのディレクトリに移動して、仮想環境を作成します。
ここでmyenvは仮想環境の名前です。好きな名前を付けてOKです。仮想環境名は、よくvenv
と名付けられることが多いので、こだわりなければpython3 -m venv venv
でもいいと思います。$ python -m venv myenv
-
仮想環境の有効化
仮想環境を有効にするには、以下のコマンドを実行します。- Windowsの場合:
$ myenv\Scripts\activate
- MacOS/Linuxの場合:
$ source myenv/bin/activate
これで仮想環境が有効化されます。ターミナルのプロンプトに(myenv)と表示されるはずです。
参考:venv --- 仮想環境の作成.仮想環境のしくみ -
パッケージのインストール
仮想環境が有効な状態で、必要なパッケージをインストールします。(myenv) $ pip install numpy pandas
こんな感じで、仮想環境内にパッケージがインストールされます。
-
仮想環境の無効化
作業が終わったら仮想環境を無効にします。(myenv) $ deactivate
これで仮想環境が無効化され、元の環境に戻ります。
まとめ
venvを使うことで、プロジェクトごとに異なる環境を手軽に管理できるようになります。
依存関係の衝突を避けることができ、システム環境もすっきり保てます。
まだ使ったことがない人は、この機会にぜひ試してみてください!
より詳しい使い方を知りたい人は、venvモジュール公式ドキュメントを確認してください。
https://docs.python.org/ja/3/library/venv.html#module-venv