我试图在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.   

当前回答

提到的第二行可以更改为

[sudo] update-alternatives --install /usr/bin/python python /usr/bin/python3 10

这为python3的路径提供了10的优先级。

替代编辑.bashrc的缺点是将命令与sudo一起使用将不起作用。

其他回答

首先,确保您的计算机上安装了Python3

回到你的终端,输入:

CD ~/到您的主目录

如果你还没有设置你的.bash_profile,输入touch .bash_profile来创建你的.bash_profile。

或者,输入open -e .bash_profile编辑该文件。

将别名python=python3复制并保存在.bash_profile中。

关闭并重新打开终端。然后输入以下命令来检查Python3是否是你的默认版本:

python的版本

你应该看到python 3.x。Y是默认版本。

干杯!

要将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

你没有包括优先级参数

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

你可以用你想要的任何优先级替换5。优先级高的备选方案优先于优先级低的备选方案。

如果你有Ubuntu 20.04 LTS (Focal Fossa),你可以安装python-is-python3:

sudo apt install python-is-python3

替换/usr/bin/python中的符号链接指向/usr/bin/python3.

如果有可能直接使用特定的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