#はじめに
macOS SierraにおいてPython2系とPython3系を共存させる環境を整えます。
環境を整える上で押さえておくポイントが三つ
- Homebrew:Mac用のパッケーシマネージャ。Pythonの使用の有無に関わらず入れておくと便利
- pyenv:複数バーションのpythonを管理するツール。今回はPython2系とPython3系を切り替えるときに使う
- anaconda:複数のパッケージがひとまとめになっているPythonのディストリビューション。これを入れるだけで基本的な科学技術計算は問題なくできる(らしい)
#Homebrewをインストール
ターミナルを起動し、以下のコマンドを打ち込んでHomebrewをインストールする。
/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
上のコマンドは公式サイトのインストール欄に書いてある。
#pyenvをインストール
pyenvはPythonのバーション管理を行うコマンドラインツールで、複数のバーションのPythonのインストールや切り替えを容易に行うことができる。ちなみにWindowsでは使えないらしい。
Homebrewを使ってpyenvをインストールする。
ターミナル状で以下のコマンドを打ち込む。
brew install pyenv
その後、~/.bash_profileに以下を追加する。
export PATH="$PYENV_ROOT/bin:$PATH"
export PYENV_ROOT="$HOME/.pyenv"
eval "$(pyenv init -)"
追加したら、変数を反映させる。
source .bash_profile
反映後、以下のコマンドでバージョンが表示されたら問題なくインストールできている。
pyenv -v
#anacondaのインストール
anacondaはpyenvを利用すれば簡単にインストールすることができる。
pyenv install -l
を実行すれば、pyenv経由でインストールできるPythonのバージョン一覧が表示される。
anacondaに限定して表示させたい場合は、
pyenv install -l | grep anaconda
とすればOK
##Python2系のインストール
pyenv install anaconda2-x.x.x
##Python3系のインストール
pyenv install anaconda3-x.x.x
#インストールしたバージョンの確認
pyenvでインストールしたPythonのバージョンを確認する場合は
pyenv versions
と打ち込めば、インストールしたバーションの一覧が下のように表示される。
* system (set by /Users/yourname/.pyenv/version)
3.6.1
anaconda2-4.3.1
anaconda3-4.3.1
*は現在設定されているPythonのバージョンを指定している。systemはOSに標準で入っているPython。なので、単純にpyenv install ~としただけでは所望のPythonをインストールすることができるが、使用することはできない。Pythonのバージョンを変更するためにpyenv global
とpyenv local
を使用する。
#バージョンの切り替え
Pythonバージョンを切り替えるときは、pyenv global
とpyenv local
を使用する。
pyenv global 3.6.1
のようにすれば、Python全体が切り替わる。
または、特定の ディレクトリに移動した状態で、
pyenv local anaconda2-4.3.1
のようにすればそのディレクトリ以下にいる時だけ指定したバージョンを使用できる。
追記
**「Anaconda2/3の切り替えでpython2/3を切替える利点」**について質問をいただきました。正直なところ、私自身もよくわからないまま環境構築していました。質問に答えられず申し訳ありません。
質問しくださった方の体験では、Anaconda2で作ったpython3環境では動かなかったものがAnaconda3で作ったpython3環境だと動いたという声をいただきました。確信はありませんが、メリットは有るのかもしれません。詳しくはコメント欄を呼んでください。