1. ホーム
  2. コース一覧
  3. Python環境構築コース
  4. pyenvで複数のバージョンのPythonをインストールしよう!

Python環境構築コース2/7

pyenvで複数のバージョンのPythonをインストールしよう!

こちらでは、 pyenvについて紹介していきます。 pyenvを使用することで、プロジェクトによって複数のバージョンのPythonをインストールして、切り替えて使うことができます。

pyenvについて

Pythonのバージョンの切り替えを簡単にしてくれるツールです。

Pythonの2系と3系を切り替えたり、ディレクトリごとにバージョンを切り替えることもできます。

pyenvのinstall

まずはpyenvのインストールを行います。今回はgitから持ってきてインストールします。

git clone git://github.com/yyuu/pyenv.git ~/.pyenv

pyenvのPATHを通す

pyenvをインストールしただけではパスは通らないので、パスを通していきましょう。

パスを通すには.bashrcを編集します。

echo 'export PYENV_ROOT="$HOME/.pyenv"' >> ~/.bashrc
echo 'export PATH="$PYENV_ROOT/bin:$PATH"' >> ~/.bashrc
echo 'eval "$(pyenv init -)"' >> ~/.bashrc

コピーして一つずつ実行していきましょう。

もしくは、vimを使用して直接書き込むこともできます。

vim ~/.bashrc
export PYENV_ROOT="$HOME/.pyenv"
export PATH="$PYENV_ROOT/bin:$PATH"
eval "$(pyenv init -)"
# ご自身の環境で行ったときにエラーが起きた場合は eval "$(pyenv init --path)" としてください

最後にsourceコマンドで保存しましょう。

source ~/.bashrc

versionの確認

インストールできるPythonのバージョンの確認をしましょう。

pyenv install --list とすることでインストール可能なバージョンの一覧を表示することができます。

pyenv install --list
Available versions:
  3.x.x
  3.y.y
	3.z.z
	....

指定したversionのinstall

インストールをする時は pyenv installの後にPythonのバージョンを指定します。

pyenv install 3.x.x
pyenv install 3.y.y

pyenvでPython versionの切り替え

バージョンの切り替えを行います。バージョンの切り替え全体に反映される globalと現在いるディレクトリのみに反映される localの2種類があります。それぞれをlocalかglobalどちらかを指定し、バージョンを指定することでバージョンの切り替えを行うことができます。

globalはシステム全体で使うバージョンを変えたいときに使用。

localはプロジェクトごとで違うバージョンを使いたいときに使用。

pyenv local 3.x.x
pyenv global 3.y.y

では切り替えができているか確認しましょう。 python --versionで現在いるディレクトリのバージョンを確認することができます。

python --version
# localなら
Python 3.x.x
# globalなら
Python 3.y.y

しっかり表示されているでしょうか。

または、pyenv versionsコマンドで、バージョンが切り替わっているか確認しましょう。

pyenv versions
  system
* 3.x.x
  3.y.y
python --version
# localなら
Python 3.x.x

二つとも同じバージョンが指定されていたら切り替えができていることになります。

pyenvのupdate

pyenvをインストールしてから時間が経過していた場合、pyenvのバージョンが古いことが原因で最新のPythonがインストールできない場合があります。

この状況を解決するには、GitHubの該当リポジトリからfetchしてくるか、pyenvのプラグインであるpyenv-updateをインストールし、pyenv updateコマンドを使用できるようにします。今回はpyenv-updateのインストール方法をご紹介します。

pyenv-updateのinstall

以下のコマンドでGitHubからcloneします。

git clone https://github.com/pyenv/pyenv-update.git $(pyenv root)/plugins/pyenv-update

次にpyenv updateコマンドを実行し、pyenvのアップデートを行います。

pyenv update

コマンドを実行してアップデートが完了すれば、最新のバージョンのPythonがインストールできるようになります。

pyenvのuninstall

pyenvでインストールしたPythonをアンインストールする際は、以下のコマンドを実行します。

pyenv uninstall アンインストールしたいversion

はじめに、アンインストール対象を確認するため、Pythonのバージョンを確認します。

pyenv versions
  3.7.0

以下のコマンドでアンインストール対象のPythonのバージョンを指定し、コマンドを実行します。

pyenv uninstall 3.7.0
pyenv: remove /home/envader/.pyenv/versions/3.7.0? [y|N] y
pyenv: 3.7.0 uninstalled

アンインストールができているか確認します。

pyenv versions
Warning: no Python detected on the system

システム上でPythonが検出できませんと表示されています。これで指定したバージョンのPythonをアンインストールすることができました。

まとめ

今回はpyenvについて紹介しました。

pyenvの手順は

  1. gitでインストール
  2. .bashrcを編集しパスを通す
  3. バージョンのインストール
  4. global、localでバージョンの切り替え

主にこの4段階です。

開発するときによく使うツールですので、簡単な使い方だけでも覚えておきましょう。

Python環境構築コース

他にもEnvaderでは、Pythonの使い方に関係するpipやvenv、requirements.txtの使い方などをハンズオンを通して学ぶことができるPythonの環境構築コースを提供しています。

問題を解くためには、十分な画面サイズのPC環境をご利用下さい。