linux (ubuntu) 环境下的 python2.7 和 python3.* 的 替换方法

在Ubuntu环境下, 一般默认的python 版本为2.7 或2.×, 如何改变系统默认的 python 版本呢?,下面来一起看一下吧.

首先可以用ls命令查看当前系统环境下的所有 python 版本:

alanax@alanax:~$ ls /usr/bin/python*
/usr/bin/python            /usr/bin/python3            /usr/bin/python3-config
/usr/bin/python2           /usr/bin/python3.6          /usr/bin/python3m
/usr/bin/python2.7         /usr/bin/python3.6-config   /usr/bin/python3m-config
/usr/bin/python2.7-config  /usr/bin/python3.6m         /usr/bin/python-config
/usr/bin/python2-config    /usr/bin/python3.6m-config
alanax@alanax:~$ 
alanax@alanax-373:~$ python --version
Python 2.7.17

如果想要基于用户修改python 版本。只需要在其home目录下创建一个alias (别名)即可。 首先打开用户的  /.bashrc 文件,添加信息来修改默认使用的Python版本:

alanax@alanax:~$ vim ~/.bashrc 

进入/.bashrc 文件后添加上: alias python='/usr/bin/python3.6', 然后重新加载 .bashrc 文件,使操作生效。

alanax@alanax:~$ ./bashrc
alanax@alanax:~$ python --version
Python 3.6.9

 

其次还有一种方法是:在系统环境下修改Python 版本,也就是切换到 root 权限下修改python 版本。

alanax@alanax:~$ su root
Password: 
root@alanax:/home/alanax# update-alternatives --list python
update-alternatives: 错误: 无 python 的候选项

如果出现上面所示的错误信息,表示Python的替代尚未被update-alternatives命令识别,这时我们需要更新一下替代列表,将python2.7, python3.6放入其中。

root@alanax:/home/alanax# sudo update-alternatives --install /usr/bin/python python /usr/bin/python2.7 1
update-alternatives: 使用 /usr/bin/python2.7 来在自动模式中提供 /usr/bin/python (python)
root@alanax:/home/alanax# sudo update-alternatives --install /usr/bin/python python /usr/bin/python3.6 2
update-alternatives: 使用 /usr/bin/python3.6 来在自动模式中提供 /usr/bin/python (python)
root@alanax:/home/alanax# update-alternatives --list python
/usr/bin/python2.7
/usr/bin/python3.6

这时我们再看一下python的 version

root@alanax:/home/alanax# python --version
Python 3.6.9

另外,我们还可以用以下指令随时替换python 版本的优先级

root@alanax:/home/alanax# update-alternatives --config python
有 2 个候选项可用于替换 python (提供 /usr/bin/python)。

  选择       路径              优先级  状态
------------------------------------------------------------
  0            /usr/bin/python3.6   2         自动模式
* 1            /usr/bin/python2.7   1         手动模式
  2            /usr/bin/python3.6   2         手动模式

要维持当前值[*]请按<回车键>,或者键入选择的编号:2
update-alternatives: 使用 /usr/bin/python3.6 来在手动模式中提供 /usr/bin/python (python)
root@alanax:/home/alanax# update-alternatives --config python
有 2 个候选项可用于替换 python (提供 /usr/bin/python)。

  选择       路径              优先级  状态
------------------------------------------------------------
  0            /usr/bin/python3.6   2         自动模式
  1            /usr/bin/python2.7   1         手动模式
* 2            /usr/bin/python3.6   2         手动模式

要维持当前值[*]请按<回车键>,或者键入选择的编号:1
update-alternatives: 使用 /usr/bin/python2.7 来在手动模式中提供 /usr/bin/python (python)

在修改上面的的优先级后,需要重新打开一个窗口才可以看到python 的版本已发生了默认替换;

alanax@alanax:~$ python --version
Python 3.6.9
alanax@alanax:~$ python --version
Python 2.7.17

其次,我们也可以选择删除不需要的版本, 移除软连接

alanax@alanax:~$ update-alternatives --remove python /usr/bin/python2.7 

alanax@alanax:~$ rm -rf /data/logs
alanax@alanax:~$ ln -s  /temp/logs /data/logs

 

你可能感兴趣的:(Liunx)