我试图在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。优先级高的备选方案优先于优先级低的备选方案。

其他回答

一个简单安全的方法是使用别名。把这个放到~/中。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

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

sudo apt install python-is-python3

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

只需删除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
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
       ~$ sudo apt-get install python3.9
/usr/bin$ cd /usr/bin
/usr/bin$ sudo unlink python3
/usr/bin$ sudo ln -sv /usr/bin/python3.9 python3
/usr/bin$ python3 --version
          Python 3.9.5
/usr/bin$ pip3 --version
          pip 20.0.2 from /usr/lib/python3/dist-packages/pip (python 3.9)