【Python】pyenvでバージョン管理(導入だけ)

新しい言語を触りたいというだけの理由でPythonに手を出してみます。

‣ ~ python -V
Python 2.7.9

macOSにはすでにPythonがインストールされています。

Python2とPython3は共存できるようなので、3の方も導入してみます。

‣ ~ brew install python3
‣ ~ python3 -V
Python 3.4.2

バージョン指定なしで3.4.2が入りました。

入門サイトを巡ると、2.7.9や3.5.Xを使っているところが散見されるので、
バージョンを揃えていきます。

Rubyでいうrvmやrbenvのようなバージョン管理ツールであるpyenvなるものがあるみたいです。
今回はその導入についてです。

さっそくインストール。

‣ ~ brew install pyenv
‣ ~ pyenv -v
pyenv 1.0.7

パスを通す

‣ ~ echo 'export PYENV_ROOT="$HOME/.pyenv"' >> ~/.bash_profile
‣ ~ echo 'export PATH="$PYENV_ROOT/bin:$PATH"' >> ~/.bash_profile

利用できるバージョンを確認

‣ ~ pyenv install --list
Available versions:
  2.1.3
  2.2.3
  2.3.7
...

バージョンを指定してインストール

‣ ~ pyenv install 2.7.10
Downloading Python-2.7.10.tar.xz...
-> https://www.python.org/ftp/python/2.7.10/Python-2.7.10.tar.xz
Installing Python-2.7.10...
patching file ./Lib/site.py
ERROR: The Python zlib extension was not compiled. Missing the zlib?

Please consult to the Wiki page to fix the problem.
https://github.com/yyuu/pyenv/wiki/Common-build-problems


BUILD FAILED (OS X 10.12 using python-build 20160602)
...

こけた

エラー文に書いてあるここへアクセス

http:// https://github.com/yyuu/pyenv/wiki/Common-build-problems

Alternatively, try reinstalling XCode command line tools for your OS (especially if you just upgraded your OS)

Xcode Command Line Toolsをインストール後再実行したらいけました。

‣ ~ pyenv install 2.7.10
Downloading Python-2.7.10.tar.xz...
-> https://www.python.org/ftp/python/2.7.10/Python-2.7.10.tar.xz
Installing Python-2.7.10...
patching file ./Lib/site.py
Installed Python-2.7.10 to /Users/hyon/.pyenv/versions/2.7.10

同様に3.5.1も入れて、インストール済みのバージョンを確認

‣ ~ pyenv versions
* system (set by /Users/hyon/.pyenv/version)
  2.7.10
  3.5.1

現在のバージョン確認

‣ ~ pyenv version
system (set by /Users/hyon/.pyenv/version)

全体で使用するバージョンの設定

‣ ~ pyenv global 3.5.1
‣ ~ pyenv version
3.5.1 (set by /Users/hyon/.pyenv/version)

プロジェクトごとだとか、ディレクトリ配下で使用するバージョンを指定する場合は
globalの部分をlocalにして設定します。

以上です。

‣ ~ python -V
Python 2.7.9
‣ ~ python3 -V
Python 3.4.2

んんん??