MacにPythonのプログラミングする環境を作るのにおすすめの方法です。

目次
MacのPython環境
MacでPythonを動かすにはいろいろな方法があります。
まずは、何もインストールせずにデフォルトでPythonは動作します。
ですが、Python2系だけがインストールされていてバージョンも古い可能性があります。
Python3系を使いたい時は別途インストールする必要があります。
MacにPythonをインストールするには複数の方法があります。
- 本家版Pythonをインストール(本家サイトからダウンロード)
- 幾つかのモジュールが含まれたPythonのパッケージ(Anacondaなど)
- Homebrewを使ったインストール
大きくこの3種類の選択肢が挙げられると思います。
Pythonは2系や3系やパッケージなど複数あって、学習し始めはPython2系だけで外部モジュールも使うことがなかったのが、しばらくするとPython3系や外部モジュールも使い始める機会が出てくるかと思います。
Pythonでプログラミングするときは、ほぼ必須でモジュールやライブラリを使います。
プログラミングをするときに、必要になったモジュールやライブラリをその都度使えるようにするのはちょっと面倒です。
また、個別にインストールすると管理も煩雑になって何がインストールしているのわからなくなることもあるかも知れません。
そんな中でおすすめする方法が3.のHomebrewを使ったインストールです。
それに加えてpyenvというパッケージを使うことでより管理しやすくなります。
pyenvはいろいろなPythonのバージョンを管理するツールです。
そして、pyenvを使ってPythonのパッケージ(Anacondaなど)をインストールできるので、パッケージを含めた複数のPython環境をまとめて簡単に管理できるようになります。
まとめると以下のような利点があります。
- HomebrewでPythonのインストールを単純化してパッケージ管理しやすくなる
- pyenvを使って利用する様々なPythonを簡単に切り替えることができる
- 必要なくなるとアンインストールも簡単にできる
それではHomebrewを使ってPythonのプログラミングする環境を作っていきましょう。
手順は以下になります。ここではPythonパッケージのAnacondaをインストールします。
これらはすべてターミナルを使って実行します。
Homebrewのインストール
HomebrewはmacOS用のパッケージ管理システムです。
いろいろなコマンドラインツールを簡単にインストール管理できるシステムです。
Ubuntuの”apt-get”と同じようなものです。
HomebrewをインストールするにはXcodeのCommand Line Tools(CLT)が必要ですが、Xcodeをインストールすると自動的にCLTもインストールされます。
なので、Xcodeが入っていない場合はApp Storeからインストールしましょう。
Xcodeが入っているのにCLTがインストールされていない場合は以下のコマンドでインストールできます。
$ xcode-select --install
Homebrewをインストールしたあとで、コマンドを使うとXcodeのエラーがでる場合は、上記コマンドでCLTをインストールしてください。
(例えば、「brew upgrade」などのコマンド実行時に「Error: Xcode alone is not sufficient on Sierra.」といったエラーがでる場合がある)
コマンドラインツールだけをインストールすることもできます。
以下のURLへアクセスし「Command Line Tools」の.dmgファイルをダウンロードしてインストールしてください。
コマンドラインツールがインストールできたら、Homebrewのサイトへ行き画面にあるスクリプトをターミナルに貼り付けて実行します。
するとHomebrewがインストールされます。
インストールには数分かかります。
完了したら以下のコマンドでHomebrewに問題がないかチェックしてください。
$ brew doctor
もしWarningなど出た場合は解消しておくことをおすすめします。
Homebrewでpyenvをインストール
pyenvは単独でインストールできますが、ここではHomebrewを使ってインストールします。
以下のコマンドでインストールします。
$ brew install pyenv
インストールできたら以下のコマンドでpyenvを初期化するコマンドを.bash_profileに記述してコマンドを有効にします。
$ echo 'eval "$(pyenv init -)"' >> ~/.bash_profile $ exec -l $SHELL
Homebrewを使わずにpyenvをインストールした場合は、以下の環境変数の設定を.bash_profileに記述してください。
$ echo 'export PYENV_ROOT="$HOME/.pyenv"' >> ~/.bash_profile $ echo 'export PATH="$PYENV_ROOT/bin:$PATH"' >> ~/.bash_profile
macOS MojaveではpyenvでPythonインストール時にエラーが発生します。
以下の記事を参考に対応してください。
Macでpyenvを使ってPythonのインストールがzlibエラーとなる時の対処法
pyenvでAnacondaをインストール
まず以下のコマンドでインストール可能なバージョンを確認します。
$ pyenv install -l
最新のAnacondaをインストールします。ここでは3系をインストールします。
$ pyenv install anaconda3-5.0.0
以下のコマンドでインストールを確認します。
$ pyenv versions
すると以下のように一覧が表示されたかと思います。
* system (set by /Users/hogehoge/.pyenv/version) anaconda3-5.0.0
アスタリスクの付いているのは現在pythonコマンドで動作するバージョンです。
バージョンを切り替えるには以下のコマンドを実行します。
$ pyenv global anaconda3-5.0.0
インストールを確認するとアスタリスクの付いているpythonが変わっているかと思います。
$ pyenv versions system * anaconda3-5.0.0 (set by /Users/birdy/.pyenv/version)
そしてPythonのバージョンを確認すると3系になっているかと思います。
$ python --version Python3.6.2 :: Anaconda, Inc.
pyenvでPythonのバージョンが切り替わらなかった場合の対処方法
$ pyenv global 3.7.4
コマンドを入力したあと、pyenvではバージョンが切り替わっているのに、動作するpythonのバージョンが切り替わらない場合
$ pyenv versions
system
2.7.16
* 3.7.4(set by /Users/user/.pyenv/version)
$ python -V
Python 2.7.16
以下の確認をしてみてください。
まずはHomebrewをインストールしたあとに上記に記述があるように「pyenv init」が.bash_profileに記述されているかどうかを確認して、なければ追記してください。
eval "$(pyenv init -)"
これを追記したら以下を実行
source ~/.bash_profile
そして、PATH環境変数に「$HOME/.pyenv/shims」があるかどうかを確認してください。
echo $PATH
なければ、以下を.bash_profileに追記してください。
export PATH="$HOME/.pyenv/shims:$PATH"
これを追記したら以下を実行
source ~/.bash_profile
これでpythonのバージョンを確認してください。
$ python -V
それでもバージョンが切り替わらない場合は以下を確認してください。
$ vi /etc/paths
/usr/local/bin
/usr/bin
/bin
/usr/local/sbin
/usr/sbin
/sbin
もしpathが上の順序になっていなければ、/usr/binと/usr/local/binの記述を入れ替えて、/usr/local/binが優先されるようにしてください。
最後に
こうすることで使いたいPythonを簡単にインストールや切替ができるようになります。
また、今インストールしているものを確認することもできます。
パッケージを単純化できるいい方法なので是非試してみてください。