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

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

其他回答

sudo rm /usr/bin/python3 #remove existing link
sudo ln /usr/bin/python3.8 /usr/bin/python3 # create a new link to the version of your choice

只需删除python-is-python2:

sudo apt purge python-is-python2

并安装python-is-python3:

sudo apt install python-is-python3

它将自动转换到新python3的过程。你也可以选择在以后去掉剩下的包:

sudo apt autoremove && sudo apt autoclean

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

只需按照以下步骤将默认python更改为新升级的python版本。对我来说很管用。

sudo apt-install python3.7安装你想要的最新版本的python cd /usr/bin进入python安装的根目录 Sudo unlink python或Sudo unlink python3。取消当前默认python的链接 sudo ln -sv /usr/bin/python3.7 python链接新下载的python版本 检查新的python版本,你就可以开始了

另外,你还可以为pip添加一个别名(在.bashrc或bash_aliases中):

别名pip = pip3’

您可能会发现,python3的干净安装实际上指向python3。X,所以你可能需要:

别名pip = 6 pip3。’ 别名python = 6 python3。’