0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

pyenvで任意のバージョンのPythonを使う

Last updated at Posted at 2025-08-08

pyenv を使うと任意のバージョンの Python をインストールしたり、異なるバージョンへ切り替えることができる。

インストール (Linux)

以下に従ってビルドに必要なライブラリなどをインストールする。

sudo apt update; sudo apt install build-essential libssl-dev zlib1g-dev \
libbz2-dev libreadline-dev libsqlite3-dev curl \
libncursesw5-dev xz-utils tk-dev libxml2-dev libxmlsec1-dev libffi-dev liblzma-dev

以下に従って pyenv をインストールする。

# チェックアウトする
$ git clone https://github.com/pyenv/pyenv.git ~/.pyenv
$ cd ~/.pyenv && src/configure && make -C src

# ~/.bashrcに追加する
$ echo 'export PYENV_ROOT="$HOME/.pyenv"' >> ~/.bashrc
$ echo 'command -v pyenv >/dev/null || export PATH="$PYENV_ROOT/bin:$PATH"' >> ~/.bashrc
$ echo 'eval "$(pyenv init -)"' >> ~/.bashrc

# ~/.bashrcの設定内容を反映させる
$ source ~/.bashrc

# インストールできるPython一覧を確認する
$ pyenv install --list
# PythonのX.XX.Xを後半10個取り出す
$ pyenv install --list | grep -E "^ +[0-9|\.]+$" | tail -n 10

# Python 3.12.1をインストールする
$ pyenv install 3.12.1
Downloading Python-3.12.1.tar.xz...
-> https://www.python.org/ftp/python/3.12.1/Python-3.12.1.tar.xz
Installing Python-3.12.1...
Installed Python-3.12.1 to /home/{ユーザー名}/.pyenv/versions/3.12.1

# デフォルトのPythonを3.12.1にする
$ pyenv global 3.12.1

# Pythonのバージョンを確認する
$ python --version
Python 3.12.1

# pyenvにインストール済みのバージョンの一覧を確認する
$ pyenv versions
  system
* 3.12.1 (set by /home/{ユーザー名}/.python-version)

# pythonのパスを確認する
$ which python
/home/{ユーザー名}/.pyenv/shims/python

インストール (Windows)

インストール自体に管理者権限は必要ないが、ダウンロードした PowerShell のスクリプトを実行するのに実行権限が要る。ユーザーディレクトリとか権限的に問題ないディレクトリ上で以下コマンドを実行する。

> Set-ExecutionPolicy RemoteSigned
> Invoke-WebRequest -UseBasicParsing -Uri "https://raw.githubusercontent.com/pyenv-win/pyenv-win/master/pyenv-win/install-pyenv-win.ps1" -OutFile "./install-pyenv-win.ps1"; &"./install-pyenv-win.ps1"

> pyenv --version

環境変数はユーザー環境変数に自動的に追加されるが、VSCode を使っている場合は全部のウィンドウを閉じないと読み込まれない。

それをやっても pyenv が認識されない場合はインストールした PC を再起動する。

コマンド

# インストールできるPython一覧を確認する
$ pyenv install -l

# Python 3.12.1をインストールする
$ pyenv install 3.12.1

# pyenvにインストール済みのバージョンの一覧を確認する
$ pyenv versions
  system
* 3.12.1 (set by /home/{ユーザー名}/.python-version)

# デフォルトのPythonを3.12.1にする
$ pyenv global 3.12.1
$ pyenv versions
* 3.12.1 (set by /home/{ユーザー名}/.python-version)

# 現在のディレクトリのPythonを3.12.1にする
# (ディレクトリ上に.python-versionが作成される)
$ pyenv local 3.12.1

# システムにインストールしているPythonに切り替える
$ pyenv global system

# 3.12.1をアンインストールする
$ pyenv uninstall 3.12.1
0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?