pyenv: Python version management

pyenv 是一套用來管理 Python 版本的工具,類似 Ruby 的 rbenv 或 Node.js 的 nvm
https://github.com/yyuu/pyenv

Install

Before doing the following steps, you must install Command Line Tools.

$ brew update
$ brew install readline openssl

$ brew install pyenv pyenv-virtualenv pyenv-virtualenvwrapper
# or
$ brew upgrade pyenv pyenv-virtualenv pyenv-virtualenvwrapper

To enable shims and autocompletion add to your profile:
  if which pyenv > /dev/null; then eval "$(pyenv init -)"; fi

To use Homebrew's directories rather than ~/.pyenv add to your profile:
  export PYENV_ROOT=/usr/local/opt/pyenv

ref:
https://github.com/vinta/dotfiles
http://tbb.co/managing-python-on-os-x-with-pyenv/

Usage

# 列出可安裝的 Python 版本
$ pyenv install -l

# 安裝
$ pyenv install 2.7.9
$ pyenv install 3.4.3

# 列出已安裝的 Python 版本
$ pyenv versions

# 設置默認的 Python 版本
$ pyenv global 2.7.9

# 讓 Python 2 和 3 並存
$ pyenv global 2.7.9 3.4.3

# 切換回系統默認的版本
$ pyenv global system

# 設置當前目錄的 Python 版本
# 會在目錄下產生一個 `.python-version` 檔案
$ pyenv local 3.4.3

# 設置當前的 shell 使用的版本
$ pyenv shell 3.4.3

# Run this command after you install a new version of Python,
# or install a package that provides binaries.
$ pyenv rehash 

# 列出 easy_install 指令的真實路徑
$ pyenv which easy_install

# 列出有安裝 bpython 指令的 Python 版本
$ pyenv whence bpython

virtualenv / virtualenvwrapper

$ brew install pyenv-virtualenv
$ brew install pyenv-virtualenvwrapper

To enable auto-activation add to your profile:
  if which pyenv-virtualenv-init > /dev/null; then eval "$(pyenv virtualenv-init -)"; fi

ref:
https://github.com/yyuu/pyenv-virtualenv
https://github.com/yyuu/pyenv-virtualenvwrapper