Skip to content

Ubuntu 21.04 へ Python 3.10 をインストールする

私の Ubuntu 21.04 環境には Python 3.9.5 がインストールされていました。 これを apt で Python 3.10 系へ差し替える手順をメモしておきます。 尚、今回は Python 3.9 と 3.10 を併存することとします。

環境

作業は Ubuntu 21.04 で行いました。

1
2
3
4
5
6
# lsb_release -a
No LSB modules are available.
Distributor ID: Ubuntu
Description:    Ubuntu 21.04
Release:    21.04
Codename:   hirsute

インストール

インストール可能な Python 3.10 系を確認したところ、3.10.0b1 のようです。

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
# apt show python3.10
Package: python3.10
Version: 3.10.0~b1-3~21.04
Priority: optional
Section: universe/python
Origin: Ubuntu
Maintainer: Ubuntu Developers <ubuntu-devel-discuss@lists.ubuntu.com>
Original-Maintainer: Matthias Klose <doko@debian.org>
Bugs: https://bugs.launchpad.net/ubuntu/+filebug
Installed-Size: 595 kB
Depends: python3.10-minimal (= 3.10.0~b1-3~21.04), libpython3.10-stdlib (= 3.10.0~b1-3~21.04), media-types | mime-support
Suggests: python3.10-venv, python3.10-doc, binutils
Breaks: python3-all (<< 3.6.5~rc1-1), python3-dev (<< 3.6.5~rc1-1), python3-venv (<< 3.6.5-2)
Download-Size: 456 kB
APT-Sources: http://jp.archive.ubuntu.com/ubuntu hirsute-updates/universe amd64 Packages
Description: Interactive high-level object-oriented language (version 3.10)
 Python is a high-level, interactive, object-oriented language. Its 3.10 version
 includes an extensive class library with lots of goodies for
 network programming, system administration, sounds and graphics.

N: There is 1 additional record. Please use the '-a' switch to see it

インストールします。

1
apt install -y python3.10 python3.10-venv

python3 で 3.10 を実行出来るように変更する

Python 3.9 より 3.10 の Priority が高くなるように設定し、python3 を実行した際に auto-mode で 3.10 が優先されるようにします。

1
2
3
update-alternatives --install /usr/bin/python3 python3 /usr/bin/python3.10 20
update-alternatives --install /usr/bin/python3 python3 /usr/bin/python3.9 10
update-alternatives --config python3

これで python3 と実行すると 3.10 が実行されるようになりました。

1
2
# python3 --version
Python 3.10.0b1

pip のインストール

pip をインストールしておきます。

1
apt install -y python3-pip