Python in Mac OS X
目次
Mac OS X 上で Python を使うためのメモです。
Homebrew で pyenv をインストールします。
pyenv は様々なバージョンの Python を簡単にスイッチできるソフトウェアです。
環境
- Mac OS X 10.9.2
既存 Python 環境の確認
Python
$ which python /usr/bin/python $ python -V Python 2.7.5
easy_install
Mac OS X の easy_install には --version オプションがありません。
$ which easy_install /usr/bin/easy_install
pip
pip はデフォルトでインストールされていませんので,easy_install を使ってインストールします。
$ sudo easy_install pip Searching for pip Reading http://pypi.python.org/simple/pip/ Best match: pip 1.5.4 Downloading https://pypi.python.org/packages/source/p/pip/pip-1.5.4.tar.gz#md5=834b2904f92d46aaa333267fb1c922bb Processing pip-1.5.4.tar.gz Running pip-1.5.4/setup.py -q bdist_egg --dist-dir /tmp/easy_install-lRbt2u/pip-1.5.4/egg-dist-tmp-oVCbYB warning: no files found matching 'pip/cacert.pem' warning: no files found matching '*.html' under directory 'docs' warning: no previously-included files matching '*.rst' found under directory 'docs/_build' no previously-included directories found matching 'docs/_build/_sources' Adding pip 1.5.4 to easy-install.pth file Installing pip script to /usr/local/bin Installing pip2.7 script to /usr/local/bin Installing pip2 script to /usr/local/bin Installed /Library/Python/2.7/site-packages/pip-1.5.4-py2.7.egg Processing dependencies for pip Finished processing dependencies for pip $ which pip /usr/local/bin/pip $ pip --version pip 1.5.4 from /Library/Python/2.7/site-packages/pip-1.5.4-py2.7.egg (python 2.7)
インストール
Homebrew で pyenv をインストール
$ brew update $ brew install pyenv ==> Downloading https://github.com/yyuu/pyenv/archive/v0.4.0-20140317.tar.gz ######################################################################## 100.0% ==> Caveats To enable shims and autocompletion add to your profile: if which pyenv > /dev/null; then eval "$(pyenv init -)"; fi To use Homebrew's directories rather than ~/.pyenv add to your profile: export PYENV_ROOT=/usr/local/opt/pyenv ==> Summary 🍺 /usr/local/Cellar/pyenv/20140317: 228 files, 2.3M, built in 5 seconds
以下を ~/.zshrc に追記し source コマンドで反映させます。
$ vi ~/.zshrc # pyenv # To enable shims and autocompletion add to your profile: if which pyenv > /dev/null; then eval "$(pyenv init -)"; fi # To use Homebrew's directories rather than ~/.pyenv add to your profile: #export PYENV_ROOT=/usr/local/opt/pyenv $ source ~/.zshrc
Homebrew で pyenv-virtualenv をインストール
pyenv-virtualenv は pyenv のプラグインです。virtualenv 機能を提供します。
$ brew install pyenv-virtualenv ==> Downloading https://github.com/yyuu/pyenv-virtualenv/archive/v20140123.tar.gz ######################################################################## 100.0% ==> ./install.sh 🍺 /usr/local/Cellar/pyenv-virtualenv/20140123: 8 files, 44K, built in 2 seconds
pyenv を使って複数の Python をインストール
インストール可能な Python のリスト
$ pyenv install -l Available versions: 2.4 2.4.1 2.4.2 2.4.3 2.4.4 2.4.5 2.4.6 2.5 2.5.1 2.5.2 2.5.3 2.5.4 2.5.5 2.5.6 2.6-dev 2.6.6 2.6.7 2.6.8 2.6.9 2.7 2.7-dev 2.7.1 2.7.2 2.7.3 2.7.4 2.7.5 2.7.6 3.0.1 3.1-dev 3.1.3 3.1.4 3.1.5 3.2 3.2-dev 3.2.1 3.2.2 3.2.3 3.2.4 3.2.5 3.3-dev 3.3.0 3.3.1 3.3.2 3.3.3 3.3.4 3.3.5 3.4-dev 3.4.0a2 3.4.0a3 3.4.0a4 3.4.0b1 3.4.0b2 3.4.0b3 3.4.0rc1 3.4.0rc2 3.4.0rc3 anaconda-1.4.0 anaconda-1.5.0 anaconda-1.5.1 anaconda-1.6.0 anaconda-1.6.1 anaconda-1.7.0 anaconda-1.8.0 jython-2.5-dev jython-2.5.0 jython-2.5.1 jython-2.5.2 jython-2.5.3 jython-2.5.4-rc1 jython-2.7-beta1 jython-dev miniconda-2.2.2 miniconda-3.0.0 miniconda3-2.2.2 miniconda3-3.0.0 pypy-1.5 pypy-1.5-src pypy-1.6 pypy-1.7 pypy-1.7-dev pypy-1.8 pypy-1.8-dev pypy-1.9 pypy-1.9-dev pypy-2.0 pypy-2.0-dev pypy-2.0-src pypy-2.0.1 pypy-2.0.1-src pypy-2.0.2 pypy-2.0.2-src pypy-2.1 pypy-2.1-src pypy-2.2 pypy-2.2-src pypy-2.2.1 pypy-2.2.1-src pypy-dev pypy3-2.1-beta1 pypy3-2.1-beta1-src pypy3-dev stackless-2.7-dev stackless-2.7.2 stackless-3.2-dev stackless-3.2.2 stackless-3.3-dev stackless-dev
pyenv で Python 2.7.6 をインストール
$ pyenv install 2.7.6 Configured with: --prefix=/Applications/Xcode.app/Contents/Developer/usr --with-gxx-include-dir=/usr/include/c++/4.2.1 Downloading readline-6.2.tar.gz... -> http://yyuu.github.io/pythons/67948acb2ca081f23359d0256e9a271c Installing readline-6.2... Installed readline-6.2 to /usr/local/opt/pyenv/versions/2.7.6 Downloading Python-2.7.6.tgz... -> http://yyuu.github.io/pythons/1d8728eb0dfcac72a0fd99c17ec7f386 Installing Python-2.7.6... Installed Python-2.7.6 to /usr/local/opt/pyenv/versions/2.7.6 Downloading setuptools-3.3.tar.gz... -> https://pypi.python.org/packages/source/s/setuptools/setuptools-3.3.tar.gz Installing setuptools-3.3... Installed setuptools-3.3 to /usr/local/opt/pyenv/versions/2.7.6 Downloading pip-1.5.4.tar.gz... -> https://pypi.python.org/packages/source/p/pip/pip-1.5.4.tar.gz Installing pip-1.5.4... Installed pip-1.5.4 to /usr/local/opt/pyenv/versions/2.7.6
pyenv で Python 3.3.5 をインストール
$ pyenv install 3.3.5 Configured with: --prefix=/Applications/Xcode.app/Contents/Developer/usr --with-gxx-include-dir=/usr/include/c++/4.2.1 Downloading readline-6.2.tar.gz... -> http://yyuu.github.io/pythons/67948acb2ca081f23359d0256e9a271c Installing readline-6.2... Installed readline-6.2 to /usr/local/opt/pyenv/versions/3.3.5 Downloading Python-3.3.5.tgz... -> http://yyuu.github.io/pythons/803a75927f8f241ca78633890c798021 Installing Python-3.3.5... Installed Python-3.3.5 to /usr/local/opt/pyenv/versions/3.3.5 Downloading setuptools-3.3.tar.gz... -> https://pypi.python.org/packages/source/s/setuptools/setuptools-3.3.tar.gz Installing setuptools-3.3... Installed setuptools-3.3 to /usr/local/opt/pyenv/versions/3.3.5 Downloading pip-1.5.4.tar.gz... -> https://pypi.python.org/packages/source/p/pip/pip-1.5.4.tar.gz Installing pip-1.5.4... Installed pip-1.5.4 to /usr/local/opt/pyenv/versions/3.3.5
pyenv でインストールされた Python を確認
$ pyenv versions * system (set by /usr/local/opt/pyenv/version) 2.7.6 3.3.5
pyenv コマンド一覧
$ pyenv install -l
- インストール可能なバージョン一覧を表示
$ pyenv install バージョン番号
- インストール
$ pyenv uninstall バージョン番号
- アンインストール
$ pyenv version
- 現在のバージョンを表示
$ pyenv versions
- インストール済みバージョン一覧を表示
$ pyenv shell バージョン番号
- カレントシェルでのバージョン切替
$ pyenv local バージョン番号
- カレントディレクトリーでのバージョン切替
$ pyenv global バージョン番号
- システム全体でのバージョン切替
ローカルバージョン
特定のディレクトリー配下のみで有効な「ローカルバージョン」をセット
ディレクトリー ~/pyenv_test 配下のみで Python 3.3.5 を有効にしてみたいと思います。
$ cd ~ $ python -V Python 2.7.5 $ mkdir pyenv_test $ cd pyenv_test $ pyenv local 3.3.5 $ python -V Python 3.3.5 $ cd .. $ python -V Python 2.7.5
$ pyenv local バージョン番号
を実行すると .python-version が作成され,そこにバージョン番号が格納されます。
$ pyenv local バージョン番号
したあとに確認してみます。
$ cd ~/pyenv_test $ cat .python-version 3.3.5
ローカルバージョンの解除
$ cd ~/pyenv_test $ python -V Python 3.3.5 $ pyenv local --unset $ python -V Python 2.7.5
$ pyenv local --unset
を実行すると .python-version が存在する場合は削除されます。
$ pyenv local --unset
したあとに確認してみます。
$ cd ~/pyenv_test $ cat .python-version cat: .python-version: No such file or directory
pyenv-virtualenv
pyenv-virtualenv を用いた仮想環境の構築
基本的なコマンドの使い方は以下のとおりです。
$ pyenv virtualenv --distribute バージョン番号 バージョン指定識別子
pyenv-virtualenv は、virtualenv を pyenv のプラグインにしたものです。
Python バージョンや,インストールされる Python モジュールが異なる,閉じられた仮想環境を構築することができます。
ここでは,Python バージョン 2.7.6, インストールモジュール gdata-python-client の環境に「gdata-python-client-2.7.6」という名前を付け,構築してみたいと思います。
$ pyenv virtualenv --distribute 2.7.6 gdata-python-client-2.7.6 Downloading/unpacking virtualenv Downloading virtualenv-1.11.4-py2.py3-none-any.whl (1.7MB): 1.7MB downloaded Installing collected packages: virtualenv Successfully installed virtualenv Cleaning up... New python executable in /usr/local/opt/pyenv/versions/gdata-python-client-2.7.6/bin/python Installing setuptools, pip...done. $ cd ~ $ mkdir gdata-python-client $ cd gdata-python-client $ pyenv local gdata-python-client-2.7.6 $ python -V 2.7.6
$ unzip gdata-2.0.18.zip Archive: gdata-2.0.18.zip inflating: gdata-2.0.18/RELEASE_NOTES.txt inflating: gdata-2.0.18/README.txt inflating: gdata-2.0.18/setup.py 中略 inflating: gdata-2.0.18/tests/atom_tests/mock_http_core_test.py inflating: gdata-2.0.18/tests/atom_tests/http_interface_test.py inflating: gdata-2.0.18/tests/atom_tests/auth_test.py $ cd gdata-2.0.18 $ python setup.py install /usr/local/opt/pyenv/versions/2.7.6/lib/python2.7/distutils/dist.py:267: UserWarning: Unknown distribution option: 'install_requires' warnings.warn(msg) running install running build running build_py 中略 byte-compiling /usr/local/opt/pyenv/versions/gdata-python-client-2.7.6/lib/python2.7/site-packages/gdata/youtube/client.py to client.pyc byte-compiling /usr/local/opt/pyenv/versions/gdata-python-client-2.7.6/lib/python2.7/site-packages/gdata/youtube/data.py to data.pyc byte-compiling /usr/local/opt/pyenv/versions/gdata-python-client-2.7.6/lib/python2.7/site-packages/gdata/youtube/service.py to service.pyc running install_egg_info Writing /usr/local/opt/pyenv/versions/gdata-python-client-2.7.6/lib/python2.7/site-packages/gdata-2.0.18-py2.7.egg-info
pyenv-virtualenv 仮想環境の削除
仮想環境を削除するときは以下のように行います。
$ pyenv uninstall gdata-python-client-2.7.6
Amazon Linux の場合
以下の記事をどうぞ!
Python in Amazon Linux - インストール編 (pyenv) - 限りなくクラウドに近いオンプレミス
Python in Amazon Linux - インストール編 (pyenv-virtualenv) - 限りなくクラウドに近いオンプレミス
- 作者: 辻真吾
- 出版社/メーカー: 技術評論社
- 発売日: 2010/04/24
- メディア: 大型本
- 購入: 19人 クリック: 199回
- この商品を含むブログ (55件) を見る
- 作者: 柴田淳
- 出版社/メーカー: ソフトバンククリエイティブ
- 発売日: 2012/08/29
- メディア: 単行本
- 購入: 1人 クリック: 13回
- この商品を含むブログ (41件) を見る
パーフェクトPython (PERFECT SERIES 5)
- 作者: Pythonサポーターズ,露木誠,ルイス・イアン,石本敦夫,小田切篤,保坂翔馬,大谷弘喜
- 出版社/メーカー: 技術評論社
- 発売日: 2013/03/05
- メディア: 大型本
- 購入: 1人 クリック: 65回
- この商品を含むブログ (30件) を見る