LoginSignup
34
46

More than 5 years have passed since last update.

Python 2系と3系の共存

Last updated at Posted at 2017-11-13

はじめに

macOS SierraにおいてPython2系とPython3系を共存させる環境を整えます。

環境を整える上で押さえておくポイントが三つ
1. Homebrew:Mac用のパッケーシマネージャ。Pythonの使用の有無に関わらず入れておくと便利
2. pyenv:複数バーションのpythonを管理するツール。今回はPython2系とPython3系を切り替えるときに使う
3. 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 globalpyenv localを使用する。

バージョンの切り替え

Pythonバージョンを切り替えるときは、pyenv globalpyenv localを使用する。

pyenv global 3.6.1

のようにすれば、Python全体が切り替わる。
または、特定の ディレクトリに移動した状態で、

pyenv local anaconda2-4.3.1

のようにすればそのディレクトリ以下にいる時だけ指定したバージョンを使用できる。

追記

「Anaconda2/3の切り替えでpython2/3を切替える利点」について質問をいただきました。正直なところ、私自身もよくわからないまま環境構築していました。質問に答えられず申し訳ありません。
質問しくださった方の体験では、Anaconda2で作ったpython3環境では動かなかったものがAnaconda3で作ったpython3環境だと動いたという声をいただきました。確信はありませんが、メリットは有るのかもしれません。詳しくはコメント欄を呼んでください。

34
46
10

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
34
46