目次
前提
- 仮想環境を作成するソフトはいくつかある(参考URL)
- conda(Anaconda)
- virtualenv(サードパーティ製)
- venv(python純正)
- pipenv?
- 以下は、Pythonに標準搭載された仮想環境の純正プログラム venv の説明
参考URL
仮想環境の作成
注意点:作成された仮想環境のディレクトリは隠しファイル(.ディレクトリ名)になっている
- 表示させるには、mac:cmd+shift+「 . 」
- ls だけでは表示されないため、オプション -a をつける
- 隠しファイルの中に入ってしまえば見える
手順概要
- まず仮想環境用のディレクトリを作成しておく(sample1)
- 別に不要?いやWinだと乱雑になるので仮想環境の上に作業用ディレクトリは必要
- Mac,Winのシェルでそのディレクトリに移動してから以下操作を行う
- 例)sample1の配下に、仮想環境のディレクトリ「.myvenv」を作成する
- 仮想環境を提供する機能「
venv(ブイエンブ)」 - 仮想環境内でインストールしたライブラリは、仮想環境でのみ有効
- 仮想環境が不要になれば、フォルダごと削除すればよい
- そうすればグローバルインストールによって環境を汚すこともない
- たぶん、どんな仮想環境をつくったか、仮想環境名を一覧表示する機能はないはず
macOS
$ python3 -m venv .myvenv
# sample1上ではなく、そのままシェル上から叩くと
Macの場合ホームフォルダに「myenv」フォルダ作成される
中身は共通(以下)
$ ls myenv
bin include lib pyvenv.cfgbinフォルダの中身(Macの場合)

Windows
C:\Users\user1\sample1\>python -m venv .myvenv仮想環境の切り替え
mac
- 作成した仮想環境にできた「
.venv」ディレクトリにあるbin/activateを - 「
.」または「source」コマンドで実行する source ./venv/bin/active先頭のドットをわすれない- 実行すると先頭に
(.venv)と表示され、仮想環境に切り替わる - 以下は仮想環境フォルダをvenvとしている

Windows
- 切り替え方法は2つある
- コマンドプロンプト
- PowerShell
コマンドプロンプト
- 作成した仮想環境にある
.venvディレクトリにあるScripts/activate.batを実行する
C:\Users\user1\sapmle1>.venv\Scripts\activate.bat
(.venv) C:\Users\user1\sample1>PowerShell
- 作成した仮想環境にある
.venvディレクトリにあるScripts\activatge.ps1を実行する - 事前に実行許可の設定が必要
PS C:\Users\user1\sapmle1> .venv\Scripts\activate.ps1
(.venv) C:\Users\user1\sample1>Linux
- Macと同じ
仮想環境の終了
deactivate
# macOS
(.venv) $ deactivate
$# Windows
(.venv) C:\Users\user1\sample1> deactivate
C:\Users\user1\sample1>仮想環境のpythonパッケージを確認する
- 仮想環境内で
python3 -m pip freeze - ここで表示されるのは仮想環境内のパッケージであり、オリジナルの環境のパッケージとは別物
仮想環境のコピー
- 仮想環境Aをコピーしたい場合、そのフォルダをコピーして利用してもよいらしいが、サイズが大きくなりやすいため、次のやり方で行うのが一般的
requirements.txt
- 仮想環境にインストールしたライブラリは、ファイル「requrirements.txt」に記載することで管理できる
requirements.txtの作成方法
- 今の仮想環境で使っているライブラリを書き出す
pip freeze > requirements.txt
- 作成したrequirements.txtを別のフォルダ(今回のフォルダ名:TEST)に貼り付け、作業ディレクトリを移動
- 続いて以下のように「仮想環境作成」「仮想環境起動」「ライブラリのインストール」を実行する
- するとコピー元と同じライブラリ群がインストールされる
- つまり、仮想環境のコピー = 同じライブラリ(同バージョン)が使える、を意味する
- pip の使い方は、「pip(改)」を参照
# 1. 仮想環境作成
python3 -m venv env
# 2. 仮想環境起動
source env/bin/activate # Macの場合
env/Scripts/Activate.ps1 # Winの場合
# 3. ライブラリのインストール
pip install -r requirements.txt