Pythonの公式ドキュメントによると、Python2.7のサポートは近い将来終了します。
廃止:Python 2.7は2020年1月1日にサポートが終了します。それ以降、Python 2.7は維持されないため、Pythonをアップグレードしてください。 pipの将来のバージョンでは、Python2.7のサポートが終了します。 pipでのPython2サポートの詳細については、https://pip.pypa.io/en/latest/development/release-process/#python-2-support
を参照してください。
Ubuntuが次のバージョンでデフォルトとしてPython3を使用しないのはなぜですか?
$ cat /etc/os-release
NAME="Ubuntu"
VERSION="19.04 (Disco Dingo)"
ID=ubuntu
ID_LIKE=debian
PRETTY_NAME="Ubuntu 19.04"
VERSION_ID="19.04"
HOME_URL="https://www.ubuntu.com/"
SUPPORT_URL="https://help.ubuntu.com/"
BUG_REPORT_URL="https://bugs.launchpad.net/ubuntu/"
PRIVACY_POLICY_URL="https://www.ubuntu.com/legal/terms-and-policies/privacy-policy"
VERSION_CODENAME=disco
UBUNTU_CODENAME=disco
$ python
Python 2.7.16 (default, Apr 6 2019, 01:42:57)
[GCC 8.3.0] on linux2
Type "help", "copyright", "credits" or "license" for more information.
ベストアンサー
Bionic Beaverのリリースノートによると:
Python2はデフォルトでインストールされなくなりました。 Python3が3.6に更新されました。これは、Python2をメインに含む最後のLTSリリースです。
そして、上記のステートメントは真実です。 Python 2は、18.04ではデフォルトでインストールされておらず、その後にリリースされたバージョンです。 UbuntuはすでにほとんどすべてのプロジェクトをPython2からPython3に移行しています。たとえば、Disco Dingoのリリースノートによると:
Sambaはバージョン4.10.xに更新され、ここでの大きな変更の1つは python3です。 サポート。 Discoでは、tdbを除いて、sambaとその依存関係はすべてpython3になりました。 tdbは引き続きpython2パッケージ、つまりpython-tdbを構築しますが、samba自体を含む他のすべてのパッケージはpython3のみです。
さらに、Ubuntu 18.04のリリース前でさえ、Ubuntu/Canonicalは開発者にPython3への移行を求め始めました。終わりが近い 。 Pythonから– Ubuntu Wiki:
現在、すべてのUbuntu /Canonical主導の開発はPython3を対象としている必要があり、すべての新しいコードはPython3のみである必要があります。 依存関係スタックが原因でこれを実行できない場合は、話しましょう。
システムにPython2が意図的にインストールされたか、開発者がPython3に移行していない他のパッケージの依存関係としてインストールされているようです。実行することでPython2に依存するインストール済みパッケージを確認できます
>apt rdepends python --installed
python
のときにPython2が呼び出される理由 実行されるのは歴史的の1つにあります PEP 394のポイント— Unixライクなシステムでの「python」コマンド:
python
コマンドは常にPython2を呼び出す必要があります (Python2コードがPython3で実行されているときに診断が難しいエラーを防ぐため)
20.04などの新しいリリースでは、Ubuntuは2つのパッケージを提供します。
python-is-python2/focal,focal 2.7.17-4 all
symlinks /usr/bin/python to the DEPRECATED python2
python-is-python3/focal,focal 3.8.2-4 all
symlinks /usr/bin/python to python3
名前が示すように、以前のものはpython
を作成します python2
を呼び出す その後、python3
を呼び出します 。 Python 2に依存するアプリケーションがない場合は、python-is-python3
をインストールできます。 python
を作成するには python3
を呼び出す 。または、スクリプトのシェバンを/usr/bin/python3
に編集することもできます。 python3
を直接使用するスクリプトを作成する 通訳として。