pyenvによるPythonバージョン管理
Pythonは人気が上昇している言語だ。Python製のツールを実行したい、Pythonでなにかを書きたい、ということは珍しくないだろう。このときPythonのバージョンが大事になる。
Pythonに限らずどんな言語で開発されたソフトウェアでも特定のバージョンのインタプリタや仮想マシンに依存している。特にPythonは活発にアップデートされている言語なので後方互換性がない機能もある。あなたが必要としている機能を具備したPythonバージョンをインストールして利用する必要があるのだ。
ここで問題が発生する。Pythonの人気がありすぎてOSがシステム管理のためにPythonを使っていたりする。しかもちょっと古いバージョンに依存していたりする。もしあなたが最新バージョンのPythonをインストールするとOSのシステム管理機能が動かなくなってしまうかもしれなのだ。
異なるPythonバージョンを必要に応じて切り分けられないだろうか?それを実現するのが今回紹介するPythonバージョン管理ツール pyenvだ。
pyenvはPythonを利用する上で必須ツールだ。覚えておいて欲しい。
基本情報
- Simple Python version management
- Pythonのバージョンを切り替えることができる
- OS全体で切り替えることも、特定のディレクトリのみ切り替えることもできる
- ライブラリ環境の切り替えはできない
- virtualenvやpipenvを利用する
- virtualenvやpipenvのバックエンドでも利用されている様子
インストール
- homebrewでインストール
$ brew install pyenv
- 環境変数を設定
$ vim ~/.bash_profile export PYENV_ROOT="$HOME/.pyenv" export PATH="$PYENV_ROOT/bin:$PATH" eval "$(pyenv init -)"
使い方
$ pyenv install 3.8.0
- Pythonのアンインストール
$ pyenv uninstall 3.8.0
- Pythonのバージョンを切り替える - OS全体
$ pyenv global 3.5.0
$ cd <directory> $ pyenv local 3.8.0
- 現在のPythonのバージョンを確認 - pyenv設定
$ pyenv versions
- OSの認識
$ python --version
トラブルシュート
- pyenv設定とOS認識が一致しない場合はPATHの順序性をチェック