Macでpyenv-virtualenvを使ってみる

2017年5月10日

MacにはデフォルトでPython2.7系がインストールされていますが、新しいプロジェクトでPython3.x系を使う必要があり、Macのデフォルトの環境は触らずにPython3.x系を使えるようにするために、pyenv-virtualenvを導入した時の手順を書いていきたいと思います。

以前、Python2.7系の環境で開発をしていましたが、かなり前のことで色々忘れてることもあったり、ネットでPython2系と3系どちらが良いかなど調べていると、今から勉強するのであればPython3系でやったほうが良いみたいだったので、とりあえず、pyenv-virtualenvを利用してPython3系を導入することにしました。

pyenvとvirtualenvについて

pyenv

  • Pythonのバージョン切り替えに使用します。
  • Pythonのバージョンごとに管理することができるようになります。

virtualenv

  • 仮想環境構築に使用します。
  • ディレクトリ単位でのPythonのバージョン管理・パッケージ管理ができるようになります。

インストールした環境

  • ハード:MacBook Air 13-inch Early 2015
  • OS:macOS Sierra 10.12.2
  • Homebrew 0.9.9

pyenv-virtualenvをインストールする

Homebrewを利用してpyenv-virtualenvをインストールします。
Homebrewをインストールしていない場合は、下記にインストール方法記載していますので、参考にしてください。

MacにHomebrewをインストールする

# pyenv-virtualenvのインストール
$ brew install pyenv-virtualenv

インストールが成功したらbash_profileに下記を追加します。

$ vim ~/.bash_profile

## Set path for pyenv
if which pyenv > /dev/null; then eval "$(pyenv init -)"; fi
export PYENV_ROOT=/usr/local/var/pyenv
if which pyenv-virtualenv-init > /dev/null; then eval "$(pyenv virtualenv-init -)"; fi

上記の設定をターミナルに反映させるため、下記コマンドを実行します。

$ source ~/.bash_profile

pyenvを使ってPython3をインストールする

現時点で最新版のPython3.5.2をインストールします。

# Python3.5.2のインストール
$ pyenv install 3.5.2
・・・
・・・

# Python3.5.2がインストールされたか確認する
$ pyenv versions
* system
  3.5.2
$ ls ~/.pyenv/versions
3.5.2

Python3.5.2の仮想環境を作成する

$ pyenv virtualenv 3.5.2 test

# 仮想環境が作成されたか確認する
$ pyenv versions
* system
  3.5.2
  test

仮想環境をディレクトリに構築する

# ディレクトリを作成する
$ mkdir ~/python/test
$ cd ~/python/test

# 作成したフォルダにtestという仮想環境を設定する
$ pyenv local test
$ pyenv versions
  system
  3.5.2
* test

# testというディレクトリに仮想環境が反映されているかどうか確認する
(test)$ python --version
Python 3.5.2

仮想環境を削除する

仮想環境を削除したい場合は下記コマンドを実行してください。

$ pyenv uninstall test
$ pyenv versions
* system
  3.5.2