仮想環境 バージョン管理 まとめ Python

  • 33
    いいね
  • 0
    コメント

概要

Pythonは2系と3系でそれぞれ互換性がありません.
この関係から二つのバージョンのものが出回っています.

仮想環境管理の方法が分かりやすく紹介しているスライドがあったので
そのスライドの内容をお借りし,自分がメインで使っているvirtualenvの内容を付け足しました.
詳しく知りたい方は,参考文献を参照してください.

仮想環境紹介

virtualenv

・同一バージョンのPythonで使用するライブラリを切り替えて使えるようにするツール
・pip でインストールできる
・Windowsでも使える
vertualenv.png
<引用:機械学習名古屋_第7回勉強会_Python環境構築方法.key>

pyenv

・色々なPythonバージョンを管理するツール
・Python2系と3系を切り替えて使える
・shellやディレクトリで使用するPythonを指定可能
・同一バージョンのPythonでライブラリを切り替えて使うことはできない
・Windowsでは使えない
pyenv.png
<引用:機械学習名古屋_第7回勉強会_Python環境構築方法.key>

pyenv-virtualenv

・pyenvで同一バージョンのPythonでライブラリを切り替えて使えるようにしたツール
・作者はpyenvと同じ方
・Windowsでは使えない
pyenv-virtualenv.png
<引用:機械学習名古屋_第7回勉強会_Python環境構築方法.key>

インストール・使用

LinuxとWindowsのインストール方法も紹介しているのですが,
文量が多くなるのでMacのみに省略させていただきます.

virtualenv

インストール

インストール
$ pip install virtualenv
仮想環境作成
$ virtualenv -p [Pythonバージョン] [仮想環境名]

# 例
$ virtualenv -p 3.5 python3.5

使用

使用
$ source [仮想環境名]/bin/activate

# 例
source python3.5/bin/activate

成功すると端末の表示が
(python3.5)$
と変更しているはずです.

終了
$ deactivate

環境の削除を行いたい場合は,作成ディレクトリを削除すればOKです.

pyenv-virtualenv

インストール

インストール
$ brew install pyenv-virtualenv
環境変数設定
$ echo 'export PYENV_ROOT="/usr/local/var/pyenv"' >> ~/.bash_profile
$ echo 'if which pyenv > /dev/null; then eval "$(pyenv init -)"; fi' >> ~/.bash_profile
$ echo 'if which pyenv-virtualenv-init > /dev/null; then eval "$(pyenv virtualenv-init -)"; fi' >> ~/.bash_profile
$ source .bash_profile

bash以外のシェルを使用の方は.bash_profileの部分を変更してください.

Pythonインストール
pyenv install [Pythonバージョン]
仮想環境作成
$ pyenv virtualenv [Pythonバージョン] [仮想環境名]

# 例
$ pyenv virtualenv 2.7.11 Py2Base
$ pyenv virtualenv Py2Base py2-test 

仮想環境から新しい仮想環境を作った場合はライブラリ等も引き継がれるようです.

使用

標準で使用するPythonを変更
$ pyenv global [仮想環境名]
現在のshellのPythonを変更
$  pyenv shell [仮想環境名]
現在のディレクトリのPythonを変更
$ pyenv local [仮想環境名]
仮想環境削除
$ pyenv unisntall [仮想環境名]

参考文献

機械学習名古屋_第7回勉強会_Python環境構築方法.key