Python

MacでPython使う時の最低限のメモ(pyenv編)

More than 3 years have passed since last update.

pyenvを利用したPythonのインストールおよびバージョン切り替えの方法。

標準インストールのものやbrewでインストールされたものがあっても、原則問題無く共存(切り替え)可能です。


pyenvのセットアップ


インストール

インストールはbrewでできるのでbrewで。

brew install pyenv


環境変数の設定

環境変数を設定。全てのPATHに優先して~/.pyenvを見るようになっていればOK(/usr/binや/usr/local/binになっていると既存のPythonが優先されてしまいます)。

export PYENV_ROOT="${HOME}/.pyenv"

export PATH=${PYENV_ROOT}/bin:$PATH
eval "$(pyenv init -)"

変数を反映します。

source .bash_profile


使ってみる


インストール可能なバージョンのチェック

pyenvで設定可能なバージョン一覧を見てみます。

pyenv install -l


特定バージョンのインストール

お好みのバージョンをインストールします。私は、計算系で使うことが多いのでanacondaの2.x系をインストールします。

pyenv install anaconda-2.4.0


インストールされた(利用可能な)バージョンの確認

インストールされたバージョン一覧を得ます。なお、この状態ではまだ利用できる状態にはなっていません(PATHが通っていません)。

pyenv versions


利用バージョンの設定

実際に指定のバージョンを利用するためにはglobalコマンドでバージョンを指定します。

pyenv global anaconda-2.4.0

なお、特定のディレクトリのみで適用したい場合はlocalというオプションもあります。

localを利用することで、作業ディレクトリ以下に.python-versionが作成され、バージョンが設定され、その設定がglobalより優先される。


Shimsの更新

バージョン等を変更したら、正しく動作させるために諸々の情報を更新します。

pyenv rehash


なお、この操作は、brew install pyenv-pip-rehashをインストールすることで自動化できるようです。

インストール時はbrew install homebrew/boneyard/pyenv-pip-rehashとする必要があるようです。



元々のものを使う

元々のものはsystemとして扱われる。

pyenv versions

* system (set by /Users/user/.pyenv/version)
anaconda-2.4.0

となっているようなので、

pyenv global system

とすればよいようです(ただ、whichをしても/usr/bin等にはならない模様)。


その他

当然ですが、pipでのインストール、管理も各バージョン毎に行われるようです。