プログラミング

Pythonのバージョンを切り替える pyenv の使い方

投稿日:2020年4月6日 更新日:

1. pyenv とは?

pyenv は、Python のバージョンを切り替えるコマンドラインのツールです。

もう少し具体的にいうと、python, pip, ipython, pydoc などの Pythonに関する各コマンドがまとめて切り替わります。また、pip コマンドでインストールするライブラリもバージョン毎に別管理になります。そのため、「Python のバージョンを切り替える」ではなく、「Pythonの環境を切り替える」と表現されることもあります。

Python のバージョンには 2系と3系があるのですが、長年どちらも使われてきました。そのため、Pythonを利用しているプログラム(ツール)によって、どちらのバージョンが必要なのかが割とばらばらだったりします。このような場合に、バージョンが簡単に切り替えられると非常に便利です。もちろん、Python のプログラムを自分で書く場合にも便利です。

※ 2系は 2020年4月でサポートが終了します。

※ 更に高度なことができる pipenv というツールもあります。

2. pyenv の導入

環境

Ubuntu 18.04 (on WSL) での pyenv 導入手順について説明します。

導入手順

(1) Ubuntu 18.04 のターミナルエミュレータを開きます。

(2) 以下のコマンドを実行し、ホームディレクトリ直下に .pyenv ディレクトリを作成します。

$ git clone https://github.com/pyenv/pyenv.git ~/.pyenv

pyenv コマンドで導入する Python は、このディレクトリ内にインストールされます。

(3) ~/.profile ファイルに以下を記述します。

if [ -d "${HOME}/.pyenv" ]; then
    export PYENV_ROOT="${HOME}/.pyenv"
    export PATH="$PYENV_ROOT/bin:$PATH"
    if command -v pyenv 1>/dev/null 2>&1; then
        eval "$(pyenv init -)"
    fi
fi

(4) virtualenvwrapper をインストールします。

$ pip install virtualenvwrapper
  • これをインストールしないと、ターミナル起動時に警告が表示されます。

(5) ターミナルを開き直します。

3. pyenv を使う

インストールできるバージョン確認する

$ pyenv install -l

特定のバージョンのPythonをインストールする

$ pyenv install バージョン
$ pyenv rehash

インストール済みのバージョンを表示する

$ pyenv versions

利用するバージョンを変更する(グローバル)

$ pyenv global バージョン

今いるディレクトリで使用するバージョンを変更する

$ pyenv local バージョン

ディレクトリ固有のバージョン設定をクリアする

$ pyenv local --unset

インストール済みのバージョンをアンインストール

$ pyenv uninstall バージョン

4. おわりに

上にも書いた通り、2020年4月で 2系のサポートが切れるので、今後は 3系の割合が更に増えていくでしょう。

とはいえ、2系にしか対応していない Python製のプログラムを使いたい場合や、3系であっても細かいバージョンを切り替えたい場合には、依然として pyenv のようなツールは便利であり続けるはずです。

5. 参考

📂-プログラミング

執筆者:labo


comment

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

関連記事

WordPress

plugin-update-checker を使って WordPress のテーマに自動更新機能を実装する

目次1. はじめに2. テーマディレクトリに対する準備作業3. テーマを更新する手順3-1. テーマ提供者側3-2. 利用者側4. おわりに 1. はじめに plugin-update-checker …

React Redux

Redux + React Router を使ったサンプルページを作りました

Redux + React Router を使ったサンプルページを作りました。 目次1. スクリーンショット2. デモページ3. 動作メモ4. メモ5. ソースコード6. 参考情報 1. スクリーンシ …

React Redux

React + Redux を1つのJavaScriptファイル内で使うサンプル

目次1. はじめに2. デモページ3. 画面4. JavaScript のコード(全文)5. 解説1. Action (Action Creator)adddionActionclearAdditio …

e-Stat API を試しています。

最近、e-Stat 政府統計の総合窓口 というサイトの API機能 を試しています。 e-Stat というのは「政府統計のデータ」が閲覧できるサイトで、プログラムによってデータが取得できるように AP …

Bootstrap

ボタンを押した直後に BootstrapのTooltipを数秒間表示する方法

ウェブページ上のボタンを押した直後に、Bootstrap の Tooltip を一定時間だけ表示する方法を紹介します。 スポンサードリンク 目次1. はじめに2. 参考になる情報3. プログラムの書き …