Python2.7在18.04中不起作用,已安装python3


10

我已经在虚拟框中安装了ubuntu 18.04,尝试使用python -v时,它说您已经安装了python3,我想删除python 3或禁用它,以便可以使用python2.7并运行我拥有的一些脚本。


@karel:感谢您提供信息。我再次使用实时系统进行了检查,发现它在18.10中也未安装。
塔卡特

@karel谢谢。关闭了近距离投票,并
删除了

4
仅供参考:Python 2将在一年多的时间里失去上游支持,因此您应该制定计划以派生Python或尽快迁移到Python 3。
凯文

@Rahul使用python2python3而不是just python,因为在某些python没有版本的系统(例如Arch)中,默认情况下会运行Python 3(我认为Ubuntu有时会这样做)。同意Kevin的
观点

这里有趣的部分是,一些较旧的ubuntu 18.04仍将python符号链接到python2.7(安装后),但是现在ubuntu 18.04.02不再创建此符号链接。当您意识到18.04是LTS时,这听起来很奇怪……
IkarPohorský19年

Answers:


19

在Ubuntu 18.04和更高版本的全新安装中,默认情况下不再安装Python 2。不要从Ubuntu 18.04和更高版本中删除python3,否则不要从Ubuntu Software中删除该终端以及默认安装的许多其他应用程序。如果您删除了Python 3,现在又删除了Ubuntu软件,则终端和其他应用程序将无法正常工作,请按照此答案中的说明进行重新安装,并重新启动所有应用程序。

要在Ubuntu 18.04中安装Python 2.7,然后打开终端并输入:

sudo apt install python2.7  

要启动Python 2.7解释器,请运行以下命令:

python2.7

要启动Python 3解释器,请运行以下命令:

python3  

无论哪种方式,Python解释器在启动时都会显示版本消息,以显示您正在运行的Python版本。


7

在Ubuntu 18.04 LTS中,默认情况下会同时安装Python 2.7和Python 3:

在此处输入图片说明
现场直播

在18.10。在19.04版中,它将不会安装在实时会话中:

在此处输入图片说明

您必须先手动安装Python 2.7,然后才能使用它。

sudo apt install python

依赖它的应用程序会将其安装为依赖项。


6

1)要在Ubuntu 18.04上安装Python 2版本,请打开终端并输入:

sudo apt install python-minimal

要么

sudo apt install python2.7

检查版本:

python --version


2)如果仍然运行python 3+更新的Python替代列表,以在任何python版本之间执行切换,请运行:

update-alternatives --config python

例:

There are 2 choices for the alternative python (providing /usr/bin/python).

  Selection    Path                Priority   Status
------------------------------------------------------------
* 0            /usr/bin/python3.5   2         auto mode
  1            /usr/bin/python2.7   1         manual mode
  2            /usr/bin/python3.5   2         manual mode

Press <enter> to keep the current choice[*], or type selection number: 1
update-alternatives: using /usr/bin/python2.7 to provide /usr/bin/python (python) in manual mode

并使用选择整数选择合适的版本,如上所示。


3)如果看到:update-alternatives:错误:没有python的替代品。跑:

ls /usr/bin/python*

输出示例:

/usr/bin/python  /usr/bin/python2  /usr/bin/python2.7  /usr/bin/python3  /usr/bin/python3.5

接下来,为您希望优先级1和2使用的每个版本更新Python替代列表。

update-alternatives --install /usr/bin/python python /usr/bin/python3.5 1
update-alternatives --install /usr/bin/python python /usr/bin/python2.7 2

然后再次运行update-alternatives --config python并选择合适的版本。


您能否澄清一下这两个命令到底在做什么,我在脚本中将另一个问题从#!/ usr / bin / python更改为#!/ usr / bin / python2.7。是否可以将python2.7的环境路径更改为/ usr / bin / python
Rahul

@Rahul当您python在终端上用作命令时,将考虑替代/别名。但是在脚本中,因为您是python的绝对路径,所以您需要使用要使用的python版本的路径。
Kulfy

@Rahul,对不起,已修复。在此命令中,您可以在最后的数字参数(2和1)中设置优先级。
到期,

我不能足够支持你的回答。传说!
克里斯·波涅夫

3

您无需python3在Ubuntu上删除或禁用。

如果您只需要python来运行小型脚本,则可以简单地将Python 2安装为@karel的答案。

如果您开始学习Python,建议您使用虚拟环境conda


是的,现在就知道了,安装了python2.7并检查了whereis python2.7并使用该环境制作了脚本。.谢谢
Rahul

通常,我不从安装软件包conda,而是通过安装软件包pip。我只是conda用来创建全局访问虚拟环境。
thangdc94

2

无需禁用python3。您可以使用命令python2 filename.py执行python 2.7。您可以通过python2 --version检查python 2版本

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.