[Python3] venv - 仮想環境の使い方
Posted on 2019/03/11 in programming , Updated on: 2019/03/30
はじめに
venv とは、簡単に仮想環境を作成・管理する手段。仮想環境を作成することによって、プロジェクトごとにインストールするパッケージのバージョンを独立させることができる。
python 2系と3系の両方がインストールされている環境(Macはデフォルトで2系が入っている)では、python3 で仮想環境を作れば、python スクリプト実行時や pip install 時にも"3"の標記がいらなくなる。
Python3.3, 3.4では、仮想環境の作成の公式推奨ツールはpyenv
だったが、Python3.5からはpyenve
は非推奨となっている。
仮想環境の作成
ディレクトリを作成して、仮想環境を作成する。
$ mkdir new_dir
$ cd new_dir
$ python3 -m venv venv
上記例では、"new_dir" というディレクトリを作成し、その中に "venv" という仮想環境を作成した。"python3 -m venv venv" の2つ目の"venv"は仮想環境名を任意に指定できるが、基本的に"venv"という名前にしておくのが無難。
今後new_dir内にいくつもディレクトリが作成された場合、ややこしくなるため。
下記に続く例は、全て仮想環境名を"venv"として進めている。
仮想環境に入る
Windows
venv ディレクトリに入って
$ Scripts\activate
Mac, Linux
$ source venv/bin/activate
仮想環境に入ると、ターミナル(or コマンドプロンプト)の行頭に(venv)という文字が現れる。
(venv) $
仮想環境の確認
python -V
で python のバージョンを確認。
(venv) $ python -V
Python 3.6.5
ちなみに仮想環境に入っていない状態で、2系, 3系 を有する環境で上記コマンドを実行すると python 2系のバージョンが出力される。
$ python -V
Python 2.5.4
仮想環境でライブラリのインストール
インストールは通常環境と同じく pip を使う。python3 で仮想環境を作ったので、pip3 にする必要はなく、pip でOK。
(venv) $ pip install パッケージ名
仮想環境内のライブラリの確認
通常環境と同じく、pip freeze で可能。
(venv) $ pip freeze
パッケージ名 == x.x.x
パッケージ名 == x.x.x
.
.
仮想環境から抜ける
(venv) $ deactivate
↓
$
仮想環境の初期化
仮想環境内にインストールしたライブラリを全て削除して、python3 -m venv venv
した時の状態(初期状態)に戻したいときは、 --clear
オプションを利用する。
$ python3 -m venv --clear venv
仮想環境を削除
作成した仮想環境が必要なくなれば、venv ディレクトリを削除するだけでOK。