我试图在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 ln -s /usr/bin/python3 /usr/bin/python

您可以更改/usr/bin/python3作为python3的路径(或您想要的版本)。

但是请记住,update-alternatives可能是最好的选择。

其他回答

为Linux终端中的默认python设置优先级:

sudo update-alternatives --install /usr/bin/python python /usr/bin/python3 10
sudo update-alternatives --install /usr/bin/python python /usr/bin/python2 1

这里,我们将python3的优先级设置为10,将python2的优先级设置为1。这将使python3成为默认的python。如果你想将Python2作为默认值,那么将Python2的优先级设置为高于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

只需按照以下步骤将默认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版本,你就可以开始了

这是一个简单的方法,适用于我。

sudo ln -s /usr/bin/python3 /usr/bin/python

您可以更改/usr/bin/python3作为python3的路径(或您想要的版本)。

但是请记住,update-alternatives可能是最好的选择。

另一种非侵入性、仅限当前用户的方法是:

# First, make $HOME/bin, which will be automatically added to user's PATH
mkdir -p ~/bin
# make link actual python binaries
ln -s $(which python3) python
ln -s $(which pip3) pip

Python PIP将在一个新的shell中准备好。