このブログ記事では、複数のPythonバージョンと仮想環境を簡単に管理できる強力なツールである pyenv
と pyenv-virtualenv
の使用方法について説明します。MacやLinuxなど様々なプラットフォームでのインストール方法を説明し、これらのツールの最も頻繁に使用される機能についても説明する予定です。本講座の終了時には、開発ワークフローにおいてこれらのツールを効果的に使用する方法について、しっかりと理解することができるはずです。
I. 概要
pyenv
は Python の強力なバージョン管理ツールで、複数の Python のインストールやバージョン切り替えを簡単に行うことができます。pyenv-virtualenv
は pyenv
の拡張で、複数の仮想環境を管理することができます。これらのツールは、依存関係やPythonのバージョンが異なる複数のプロジェクトで作業する場合に特に有用です。
II. インストール
Mac
macOSにpyenv
とpyenv-virtualenv
をインストールするには、Homebrewを使用します:
brew update
brew install pyenv
brew install pyenv-virtualenv
インストール後、シェルの設定ファイル(.bashrc
、.zshrc
など)に以下の行を追加してください:
if command -v pyenv 1>/dev/null 2>&1; then
eval "$(pyenv init -)"
fi
if command -v pyenv-virtualenv-init 1>/dev/null 2>&1; then
eval "$(pyenv virtualenv-init -)"
fi
Linux
Linuxで pyenv
と pyenv-virtualenv
をインストールするには、まずリポジトリをcloneして PATH
に追加します:
git clone https://github.com/pyenv/pyenv.git ~/.pyenv
git clone https://github.com/pyenv/pyenv-virtualenv.git ~/.pyenv/plugins/pyenv-virtualenv
次に、シェルの設定ファイル(.bashrc
、.zshrc
など)に以下の行を追加します:
export PYENV_ROOT="$HOME/.pyenv"
export PATH="$PYENV_ROOT/bin:$PATH"
eval "$(pyenv init -)"
eval "$(pyenv virtualenv-init -)"
III. 使用方法
1. Pythonのバージョンをインストールする
特定のバージョンのPythonをインストールするには、install
コマンドを使用します:
pyenv install 3.9.5
2. 利用可能なPythonのバージョン一覧
インストールされているすべてのPythonのバージョンを確認するには、versions
コマンドを使用します:
pyenv versions
3. グローバルなPythonのバージョンを設定する
グローバルなPythonのバージョンを設定するには、global
コマンドを使用します:
pyenv global 3.9.5
4. ローカルのPythonのバージョンを設定する
特定のプロジェクトのローカルPythonバージョンを設定するには、プロジェクトディレクトリ内でlocal
コマンドを使用します:
pyenv local 3.8.10
5. 現在のPythonのバージョンを確認する
現在のPythonのバージョンを確認するには、version
コマンドを使用します:
pyenv version
6. 仮想環境を作成する
pyenv-virtualenv
で新しい仮想環境を作成するには、virtualenv
コマンドを使用します:
pyenv virtualenv 3.9.5 my-project-env
7. 仮想環境を起動する
仮想環境をアクティブにするには、activate
コマンドを使用します:
pyenv activate my-project-env
8. 仮想環境を停止させる
現在の仮想環境を無効にするには、deactivate
コマンドを使用します:
pyenv deactivate
9. 利用可能な仮想環境の一覧
作成したすべての仮想環境を一覧表示するには、virtualenvs
コマンドを使用します:
pyenv virtualenvs
10. 仮想環境を削除する
仮想環境を削除するには、uninstall
コマンドを使用します:
pyenv uninstall my-project-env
Bonus: Rehash
実行可能なスクリプトを含む新しい Python パッケージをインストールするときは、必ず rehash
コマンドを実行してシムを更新し、新しいスクリプトが利用可能であることを確認する必要があります:
pyenv rehash
IV. Conclusion
pyenv
と pyenv-virtualenv
は、開発ワークフローにおいて複数の Python バージョンと仮想環境を管理するための貴重なツールです。このガイドで説明する機能を使えば、依存関係やPythonのバージョンが異なる複数のプロジェクトで作業するのに十分な設備が整うでしょう。これらのツールを使って、クリーンで整理された開発環境を維持し、生産性を向上させ、依存関係の衝突のリスクを低減してください。