Python Mac

pyenv + AnacondaでMacにPython環境をセットアップする

Mac上にPythonの開発環境を整えてみたので、その備忘録です。ひとまず、MacにPython3系をインストールしてJupyter Notebookで作業できるようにすることを目標にします。

今回はQiitaの以下のページを参考にさせていただきました。先人の方々に感謝です。

■参考ページ
Macにpythonとanacondaの環境を構築してみる(pyenv,condaにて)
Condaで作ってる仮想環境の切り替えをJupyter上で簡単に行う方法

pyenvのインストール

やり方は色々とあるようですが、今回はpyenvを使います。Macには元々Python2系が入っているので、今回追加するPython3系と共存させるには、こうしたパッケージマネージャを使うと便利です。

pyenv本体はHomebrewでインストールして、しかるべきところにパスを通してあげればOKです。

# pyenvのインストール
brew install pyenv

# パスの設定
echo 'export PYENV_ROOT="$HOME/.pyenv"' >> ~/.bash_profile
echo 'export PATH="$PYENV_ROOT/bin:$PATH"' >> ~/.bash_profile
echo 'eval "$(pyenv init -)"' >> ~/.bash_profile

# パスの適用
source .bash_profile

Anacondaのインストール

続いて、Anacondaをインストールします。AnacondaはPython本体+よく使われるライブラリを一括で管理できるパッケージです。これを入れておくとひとまず必要なモノはすべてそろうのでオススメです。

まずはインストール可能なAnacondaを確認します。

pyenv install -l | grep anaconda

上記のコマンドを実行すると以下のようにインストール可能なAnacondaのバージョンがずらっと表示されます。

anaconda-1.4.0
anaconda-1.5.0
〜途中省略〜
anaconda-2.4.0
anaconda-4.0.0
anaconda2-2.4.0
anaconda2-2.4.1
〜途中省略〜
anaconda2-4.4.0
anaconda2-5.0.0
anaconda3-2.0.0
anaconda3-2.0.1
〜途中省略〜
anaconda3-4.4.0
anaconda3-5.0.0

今回はPython3系をインストールしたいので、Anacondaも3系かつ最新のもの(赤字のやつ)をインストールします。

pyenv install anaconda3-5.0.0

Anacondaで仮想環境を作る

Anacondaでは、仮想環境を作ってその中でパッケージの追加/削除ができるようになっています。必須ではありませんが、将来的にパッケージの組み合わせによって環境を複数用意したい場合に備えて、仮想環境を作っておきます。

# Anacondaをglobalに
pyenv global anaconda3-5.0.0

# 仮想環境の作成
conda create --name py3.6 python=3.6 anaconda

# globalを元に戻す
pyenv global system

仮想環境が作れたら、それを作業ディレクトリ内で有効にします。 例えば、workspaceという場所を作業ディレクトリとしたい場合はこんな感じ。

mkdir workspace
cd workspace
pyenv local anaconda3-5.0.0/envs/py3.6

ここまで来れば、作業ディレクトリ内でJupyter Notebookの起動もできるはずです。

Jupyter Notebookで仮想環境を指定できるようにする

最後に、先ほど作ったAnacondaの仮想環境をJupyter Notebook上で選択して使えるようにします。以下のような感じでJupyter Notebookに対するパッケージ追加と設定追加をします。

# パッケージの追加
pip install environment_kernels

# 設定ファイルの生成
jupyter notebook --generate-config

# 設定追加
echo "c.NotebookApp.kernel_spec_manager_class = 'environment_kernels.EnvironmentKernelSpecManager'" >> ~/.jupyter/jupyter_notebook_config.py
echo "c.EnvironmentKernelSpecManager.conda_env_dirs=['/Users/<ユーザー名>/.pyenv/versions/anaconda3-5.0.0/envs/']" >> ~/.jupyter/jupyter_notebook_config.py

あとはJupyter Notebookを起動して、「Kernel > Change kernel」からAnacondaで作った仮想環境(今回はpy3.6)が選択できればOKです。

これでPythonの開発環境をセットアップすることができました。Pythonまわりはこうしたパッケージ管理の仕組みがちゃんと整備されているので嬉しいですね。

興味のある方は是非試してみてください(・∀・)

ではではノシ

関連記事

C言語 自作物 Linux プログラミング

wordleもどきのCUIアプリをつくってみた

最近、wordleという英単語当てゲームで遊んでいます。シンプルなゲームながら、通勤時間の暇つぶしや友人とのスコア比べなど意外と中毒性があり面白いです。 普通に英単語の勉強にもなるので、もっとたくさん ...

RaspberryPi Linux

Raspberry Pi4+Ubuntu ServerでGitLabを動かしてみる

お仕事でGitLabに触れる機会があったので、学習用に自宅にもGitLabが欲しくなりました。 手元にあるRaspberry Pi4+Dockerならお手軽に立ち上げられるはずと着手したものの、意外と ...

Flutter プログラミング

【Flutter】アプリ内の設定値を実装する方法

アプリ内で独自の設定を作る場合、そのデータを保持する方法を考える必要があります。 SQL、テキストファイルなど選択肢は多々ありますが、shared_preferencesというパッケージを使えば簡単に ...

RaspberryPi Linux

YoctoでRaspberryPi4のイメージをビルドしてみた

昨今、様々なデバイスでLinuxが動くようになっている中、組み込みLinuxのデファクトスタンダードとなりつつあるのが「Yocto」と呼ばれるビルドシステムです。 組み込みの現場ではその名前を聞くこと ...

C++ 自作物

言語処理系をつくろう(第7回):比較演算子を実装する

自作の言語処理系開発日記の第7回です。前回までで変数の実装が終わったので、ここからはいよいよ制御構文を実装…と思ったのですが、制御のためには比較演算子を実装する必要がありました。 ということで、今回は ...

Ryo Yoneyama

とある会社でソフトウェアエンジニアをしています。技術的な備忘録を中心にまとめてます。ネタがあれば日記も書きます。

    -Python, Mac