概要
python2.7を良く使う!けど急に、python3系を使わなければならない!
python2.7の環境は崩さずにpython3系使えるようにならない?
という時に便利なvirtualenvの覚え書き。
virtualenvのインスコ
brew install pyenv-virtualenv
virtualenvwrapperのインスコ
pip install virtualenvwrapper
bash_profileなどに以下を追記して、sourceコマンドで実行。
if [ -f /usr/local/bin/virtualenvwrapper.sh ]; then
export WORKON_HOME=$HOME/.virtualenvs
source /usr/local/bin/virtualenvwrapper.sh
fi
※ virtualenvwrapper.shの場所は変わるかもしれないので、whichで確かめて適宜変えること。
python3系のダウンロードと確認
pyenv install 3.3.6
pyenv versions
これで以下のようになる。
MacBook-Pro:~ hoge$ pyenv versions
* system
3.3.6 (set by /Users/hoge/.pyenv/version)
python3.3.6は、/Users/hoge/.pyenv/shims/python3.3に格納される。
python3.3環境を作る
mkvirtualenv --python=/Users/hoge/.pyenv/shims/python3.3 python3.3[任意の名前]
(python3.3)MacBook-Pro:~ hoge$ python -V
Python 3.3.6 # python3.3.6を利用可能。
(python3.3)MacBook-Pro:~ hoge$ # 前の()が上のコマンドで作った環境を使っていることを表す。
(python3.3)MacBook-Pro:~ hoge$ which python
/Users/hoge/.virtualenvs/python3.3/bin/python # mkvirtualenvで指定したパスとなっている。
(python3.3)yusuke-no-MacBook-Pro:~ hoge$ which pip
/Users/hoge/.virtualenvs/python3.3/bin/pip # pipもパスが変わる。
ディアクティベート(使ってる環境から抜ける)とアクティベート(環境を変える)
deactivate # ディアクティベート
workon python3.3 # アクティベート
これで、例えばpython3.3環境にてpipでPILLOWをインストールしたら3.3環境では使えるけど、ディアクティベートしたらPILLOWが使えない、などの環境切り分けが可能となる。