pyenv & pyenv-virtualenvを使う(2021.7.11)

pyenv, pyenv-virtualenvのインストール

Macでのインストール

macOSでpyenvを使ってPython3をインストールする(2020.9.30)も参照のこと

以下のようにしてインストールできる

brew update
brew install pyenv
brew install pyenv-virtualenv

zshの場合

$ echo 'export PYENV_ROOT="$HOME/.pyenv"' >> ~/.zprofile
$ echo 'export PATH="$PYENV_ROOT/bin:$PATH"' >> ~/.zprofile
$ echo 'eval "$(pyenv init --path)"' >> ~/.zprofile
$ echo 'eval "$(pyenv init -)"' >> ~/.zshrc
$ echo 'eval "$(pyenv virtualenv-init -)"' >> ~/.zshrc
$ source ~/.zshrc
$ source ~/.zprofile

pyenv –versionとして以下のような表示がされない場合は、古い設定方法を試す。

$ pyenv --version
pyenv 2.0.3

$ pyenv init

# (The below instructions are intended for common
# shell setups. See the README for more guidance
# if they don't apply and/or don't work for you.)
    
# Add pyenv executable to PATH and
# enable shims by adding the following
# to ~/.profile and ~/.zprofile:
    
export PYENV_ROOT="$HOME/.pyenv"
export PATH="$PYENV_ROOT/bin:$PATH"
eval "$(pyenv init --path)"

# Load pyenv into the shell by adding
# the following to ~/.zshrc:

eval "$(pyenv init -)"

# Make sure to restart your entire logon session
# for changes to profile files to take effect.

古い設定方法は以下のとおり。

$ echo 'export PYENV_ROOT="$HOME/.pyenv"' >> ~/.zshrc
$ echo 'export PATH="$PYENV_ROOT/bin:$PATH"' >> ~/.zshrc
$ echo -e 'if command -v pyenv 1>/dev/null 2>&1; then\n eval "$(pyenv init -)"\n eval "$(pyenv virtualenv-init -)"\nfi' >> ~/.zprofile
$ source ~/.zshrc
$ source ~/.zprofile

bashの場合

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

古い設定方法は以下のとおり。

$ echo 'export PYENV_ROOT="${HOME}/.pyenv"' >> ~/.bash_profile
$ echo 'export PATH="${PYENV_ROOT}/bin:$PATH"' >> ~/.bash_profile
$ echo 'eval "$(pyenv init -)"' >> ~/.bash_profile
$ echo 'eval "$(pyenv virtualenv-init -)"' >> ~/.bash_profile
$ source ~/.bash_profile

pyenv, python-virtualenvの利用方法

あたらしいPythonのバージョンをインストールする

特定のアプリ開発のために専用の環境を設定する

  1. 利用可能なPythonのバージョンの確認

    $ pyenv install -list
  2. インストール済みのPythonのバージョンの確認

    $ pyenv versions
  3. 必要なバージョンのインストール

    $ pyenv install 3.9.4
  4. グローバル設定

    $ pyenv global 3.8.5
  5. ローカル設定

    $ pyenv local  3.9.4
  6. 環境の削除

    $ pyenv uninstall <version>

開発向けのローカル設定とvirtualenvの設定

現在インストールされているパッケージのリストを保存する

$ mkdir test_app1
$ cd test_app1
$ pyenv virtualenv 3.8.5 3.8.5_test_app1
$ pyenv local 3.8.5_test_app1
$ pip install ...
$ pip freeze > requirements.txt

別のPythonバージョンの環境に切り替えて同じパッケージをインストールする

$ pyenv virtualenv 3.9.4 3.9.4_test_app1
$ pyenv local 3.9.4_test_app1
$ pip install -r requirements.txt

現在のvirtualenv環境を削除する

$ pyenv versions
$ pyenv uninstall 3.9.4_test_app1

参考

Back to Index