Help us understand the problem. What is going on with this article?

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でのインストール、管理も各バージョン毎に行われるようです。

zaburo
こんにちは。自分用のメモをだらだら公開しています。
Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
Comments
No comments
Sign up for free and join this conversation.
If you already have a Qiita account
Why do not you register as a user and use Qiita more conveniently?
You need to log in to use this function. Qiita can be used more conveniently after logging in.
You seem to be reading articles frequently this month. Qiita can be used more conveniently after logging in.
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
ユーザーは見つかりませんでした