我从 Ubuntu 19.10 升级到了 20.04。很多文章都提到最新的 LTS 将不支持 python2。但是我仍然有它。这是为什么呢?
$ python
Python 2.7.18rc1 (default, Apr 7 2020, 12:05:55)
[GCC 9.3.0] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> print "hello world!"
hello world!
>>>
答案1
“支持”这个词在这里有点太强烈了。正如你所说,你执行的是升级,而不是全新安装。默认情况下不会安装 Python 2,而且很长时间没有安装,因为它在 18.04 之后从主存档移到了 Universe。但是,universe 中仍然有大量依赖 python2 的软件包,因此它仍然在 Universe 存档中。
由于您已经安装了该软件包,因此它会被升级而不是被删除。
答案2
这涵盖发行说明:
默认使用 Python3
在 20.04 LTS 中,基础系统中包含的 Python 是 Python 3.8。Python 2.7 已移至 Universe,默认情况下不包含在任何新安装中。
Ubuntu 中需要 Python 2.7 的其余软件包已更新为使用
/usr/bin/python2
其解释器,/usr/bin/python
默认情况下不会出现在任何新安装中。在从以前版本升级的系统上,/usr/bin/python
将继续指向python2
兼容性。鼓励需要在新安装的系统上兼容的用户/usr/bin/python
安装软件包python-is-python3
,而不是/usr/bin/python
指向python3
。
答案3
正如前面的答案所述,对于升级到 20.04 的某些版本,python 2 仍然是默认的 python。
为了更改默认的 python,我遵循了这篇很棒的文章,使用sudo update-alternatives
。您可以将 python3 设置为默认值,但仍可以快速更改为 python2。
https://www.fosslinux.com/39384/switching-between-python-2-and-3-versions-on-ubuntu-20-04.htm