【Ubuntu系统如何添加多个python版本并且切换】

ubuntu切换默认的python版本

当你安装 Debian Linux 时,安装过程有可能同时为你提供多个可用的 Python 版本,因此系统中会存在多个 Python 的可执行二进制文件。一般Ubuntu默认的Python版本都为2.x, 如何改变Python的默认版本。

你可以按照以下方法使用 ls 命令来查看你的系统中都有那些 Python 的二进制文件可供使用。

ls /usr/bin/python*

【Ubuntu系统如何添加多个python版本并且切换】_第1张图片

执行如下命令查看默认的 Python 版本信息:

python --version

Python 2.7.17
【Ubuntu系统如何添加多个python版本并且切换】_第2张图片

1、基于用户修改 Python 版本:

想要为某个特定用户修改 Python 版本,只需要在其 home 目录下创建一个 alias(别名) 即可。打开该用户的 ~/.bashrc文件,添加新的别名信息来修改默认使用的 Python 版本。

alias python='/usr/bin/python3.4'

一旦完成以上操作,重新登录或者重新加载 .bashrc 文件,使操作生效。

. ~/.bashrc

检查当前的 Python 版本。

python --version

Python 3.4.2

2、 在系统级修改 Python 版本

我们可以使用 update-alternatives 来为整个系统更改 Python 版本。以 root 身份登录,首先罗列出所有可用的 python 替代版本信:

update-alternatives --list python

结果:

update-alternatives: error: no alternatives for python

如果出现以上所示的错误信息,则表示 Python 的替代版本尚未被 update-alternatives 命令识别。想解决这个问题,我们需要更新一下替代列表,将 python2.7 和 python3.4 放入其中。

update-alternatives --install /usr/bin/python python /usr/bin/python2.7 1

update-alternatives: using /usr/bin/python2.7 to provide /usr/bin/python (python) in auto mode

update-alternatives --install /usr/bin/python python /usr/bin/python3.4 2

update-alternatives: using /usr/bin/python3.4 to provide /usr/bin/python (python) in auto mode

–install 选项使用了多个参数用于创建符号链接。最后一个参数指定了此选项的优先级,如果我们没有手动来设置替代选项,那么具有最高优先级的选项就会被选中。这个例子中,我们为 /usr/bin/python3.4 设置的优先级为2,所以update-alternatives 命令会自动将它设置为默认 Python 版本。

python --version

Python 3.4.2

接下来,我们再次列出可用的 Python 替代版本。

update-alternatives --list python

/usr/bin/python2.7
/usr/bin/python3.4

现在开始,我们就可以使用下方的命令随时在列出的 Python 替代版本中任意切换了。

update-alternatives --config python

【Ubuntu系统如何添加多个python版本并且切换】_第3张图片python --version
Python 2.7.8

3、移除替代版本

一旦我们的系统中不再存在某个 Python 的替代版本时,我们可以将其从 update-alternatives 列表中删除掉。例如,我们可以将列表中的 python2.7 版本移除掉。

update-alternatives --remove python /usr/bin/python2.7

update-alternatives: removing manually selected alternative - switching python to auto mode
update-alternatives: using /usr/bin/python3.4 to provide /usr/bin/python (python) in auto mode

方法2、移除软连接

rm -rf /data/logs
ln -s /temp/logs /data/logs

解决软连接ln报错-bash: /usr/local/bin/mysql: Too many levels of symbolic links

update-alternatives --config python

切换版本命令

当在Ubuntu中有多个Python版本安装时,可以使用update-alternatives命令来切换默认的Python版本。首先,确保你已经安装了想要切换到的Python版本。然后,使用以下步骤切换默认的Python版本:

列出已安装的Python版本:
使用以下命令列出系统上已安装的Python版本。

update-alternatives --list python

选择要设置为默认的Python版本:
使用以下命令选择要设置为默认的Python版本。将pythonX.Y替换为你想要设置为默认的Python版本号。

sudo update-alternatives --config pythonX.Y

验证默认Python版本:
使用以下命令验证已经设置的默认Python版本。

python --version

切换pip版本(如果需要):
如果你需要切换pip的版本,使用类似的方法。首先列出已安装的pip版本:

update-alternatives --list pip

然后选择要设置为默认的pip版本:

sudo update-alternatives --config pipX.Y

验证默认pip版本:
使用以下命令验证已经设置的默认pip版本。

  pip --version

通过这些步骤,你可以在Ubuntu中轻松切换默认的Python版本。

报错解决

【Ubuntu系统如何添加多个python版本并且切换】_第4张图片

update-alternatives --list python
update-alternatives: 错误: 无 python 的候选项
ros@ros-virtual-machine:~$ 

如果你在系统中没有找到已安装的 Python 可执行文件的备选项,可能是因为 Python 的可执行文件在你的系统中没有以 python 的名字注册。

在最新的 Ubuntu 版本中,Python 2 已经被废弃,系统默认使用 Python 3。你可以使用 python3 和 python3.x(x 为具体版本号)作为 Python 的命令。如果你的系统中安装了 Python 2,请使用 python2 或 python2.x 来调用 Python 2 版本。

例如,要查看系统中所有已安装的 Python 版本,可以使用以下命令:

update-alternatives --list python3

如果你要选择默认的 Python 版本,可以使用:

sudo update-alternatives --config python3

然后选择你想要设置为默认的 Python 3 版本。

如果你希望使用 Python 2,请使用:

sudo update-alternatives --config python2

选择你想要使用的 Python 2 版本。

你可能感兴趣的:(Ubuntu系统,#,学习笔记,ros,ubuntu,python,linux,1024程序员节,计算机视觉,服务器,opencv)