我试图在Ubuntu 16.04中将默认的python版本设置为python3。默认值是python2(2.7)。我遵循以下步骤:

update-alternatives --remove python /usr/bin/python2
update-alternatives --install /usr/bin/python python /usr/bin/python3

但是对于第二个语句,我得到了如下错误,

rejeesh@rejeesh-Vostro-1015:~$ update-alternatives --install /usr/bin/python python /usr/bin/python3
update-alternatives: --install needs <link> <name> <path> <priority>

Use 'update-alternatives --help' for program usage information.   

当前回答

如果有可能直接使用特定的python版本,与更新替代方案和别名解决方案相比,我会选择它。

Ex.

python3.6 -m pip install pytest
ptyhon3.6 -m pytest test_sample.py

-m执行特定python版本的特定模块。 第一行代码将为特定版本和用户在可能的位置/home/user/.local/lib/python3.5/site-packages安装pytest

其他回答

一个简单安全的方法是使用别名。把这个放到~/中。bashrc文件:( 如果你有gedit编辑器使用

多达gedit / .bashrc

要进入bashrc文件,然后在bashrc文件的顶部进行以下更改。

别名python = python3

在文件中添加上述内容后。运行下面的命令

~ /来源。Bash_aliases或源~/.bashrc

例子:

$ python——version Python 2.7.6 $ python3——version Python 3.4.3 $ alias python=python3 $ python——version Python 3.4.3

要将Python 3.6.8从Python 2.7更改为Ubuntu 18.04中的默认值,您可以尝试命令行工具update-alternatives。

sudo update-alternatives --config python

如果你得到错误"no alternatives for python",那么你自己用下面的命令设置一个替代:

sudo update-alternatives --install /usr/bin/python python /usr/bin/python3 2

将路径/usr/bin/python3相应更改为所需的python版本。

最后一个参数指定了它的优先级意味着,如果没有手动选择替代方案,将设置具有最高优先级数字的替代方案。在我们的例子中,我们为/usr/bin/python3.6.8设置了优先级2,因此/usr/bin/python3.6.8被update-alternatives命令自动设置为默认的python版本。

我们可以随时在上面列出的python替代版本之间切换,使用以下命令并输入选择编号:

update-alternatives --config python

更新: 从Ubuntu 20.04开始,python3是默认版本,但python仍然没有默认注册为python3。为了做到这一点,你可以简单地做:

sudo apt install python-is-python3

要了解更多信息,你可以看看这个。 老方法:

Do

cd ~
gedit .bash_aliases

然后写

alias python=python3

or

alias python='/usr/bin/python3'

保存文件,关闭终端,然后重新打开。 你现在应该没事了!链接

要更改为python3,可以在终端别名python=python3中使用以下命令。

编辑:

我写这篇文章的时候还很年轻很天真,update-alternatives是更好的方法。请看@Pardhu的回答。


过时的回答:

打开你的.bashrc文件nano ~/.bashrc。输入别名python=python3 在文件顶部的新行上,然后按ctrl+o保存文件 并按ctrl+x关闭文件。然后,回到您的命令行类型 ~ / . bashrc来源。现在你的别名应该是永久的了。