使用update-alternatives管理多个版本的Python,以及对应版本Python的第三方库的安装

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

   
   
  • 1
sudo update-alternatives --install /usr/bin/python python /usr/bin/python3.5 2

   
   
  • 1
sudo update-alternatives --install /usr/bin/python python /usr/bin/python3.6 3
pip install numpy #此时即可为python3.6安装numpy库,此库在/home/liuqiang/.local/lib/python3.6/site-packages中
sudo pip install numpy #当提示权限不够的时候使用这个命令,此库在/usr/local/lib/python3.6/dist-packages/numpy中
#注意不能使用sudo pip3 install numpy, 因为不可用
sudo pip install PyQt5
liuqiang@liuqiang-robotics:~$ python
Python 3.6.6 (default, Jun 28 2018, 04:42:43) 
[GCC 5.4.0 20160609] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> import PyQt5
>>> PyQt5.__path__
['/usr/local/lib/python3.6/dist-packages/PyQt5']
>>> 
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
liuqiang@liuqiang-robotics:~$ python
Python 3.6.6 (default, Jun 28 2018, 04:42:43) 
[GCC 5.4.0 20160609] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> import numpy
>>> numpy.__path__
['/usr/local/lib/python3.6/dist-packages/numpy']

 
 
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7

现在输入:

liuqiang@liuqiang-robotics:~$ python
Python 3.6.6 (default, Jun 28 2018, 04:42:43) 
[GCC 5.4.0 20160609] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> 
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
sudo update-alternatives --install /usr/bin/python python /usr/bin/python3.6 1
sudo update-alternatives --install /usr/bin/python python /usr/bin/python3.5 2
sudo update-alternatives --install /usr/bin/python python /usr/bin/python2.7 3

 
 
  • 1
  • 2
  • 3

现在输入:

liuqiang@liuqiang-robotics:~$ python
Python 2.7.12 (default, Dec  4 2017, 14:50:18) 
[GCC 5.4.0 20160609] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> 
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6

最后数字为对应python版本优先级,数值越大,优先级越高,设置完成后默认python版本为3.6

选择适当版本,快速切换至其他版本的python:

liuqiang@liuqiang-robotics:~$ sudo update-alternatives --config python
有 3 个候选项可用于替换 python (提供 /usr/bin/python)

选择 路径 优先级 状态

  • 0 /usr/bin/python3.6 3 自动模式
    1 /usr/bin/python2.7 1 手动模式
    2 /usr/bin/python3.5 2 手动模式
    3 /usr/bin/python3.6 3 手动模式

要维持当前值[*]请按<回车键>,或者键入选择的编号:

  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12

输入你想要默认的Python版本对应的数字编号1,2或3即可.

然后根据提示输入相应版本对应数字即可.

`liuqiang@liuqiang-robotics:~$  update-alternatives --help`
用法:update-alternatives [<选项> ...] <命令>

命令:
–install <链接> <名称> <路径> <优先级>
[–slave <链接> <名称> <路径>] .
​ 在系统中加入一组候选项。
–remove <名称> <路径><名称> 替换组中去除 <路径> 项。
–remove-all <名称> 从替换系统中删除 <名称> 替换组。
–auto <名称><名称> 的主链接切换到自动模式。
–display <名称> 显示关于 <名称> 替换组的信息。
–query <名称> 机器可读版的 --display <名称>.
–list <名称> 列出 <名称> 替换组中所有的可用候选项。
–get-selections 列出主要候选项名称以及它们的状态。
–set-selections 从标准输入中读入候选项的状态。
–config <名称> 列出 <名称> 替换组中的可选项,并就使用其中
​ 哪一个,征询用户的意见。
–set <名称> <路径><路径> 设置为 <名称> 的候选项。
–all 对所有可选项一一调用 --config 命令。

<链接> 是指向 /etc/alternatives/<名称> 的符号链接。
(如 /usr/bin/pager)
<名称> 是该链接替换组的主控名。
(如 pager)
<路径> 是候选项目标文件的位置。
(如 /usr/bin/less)
<优先级> 是一个整数,在自动模式下,这个数字越高的选项,其优先级也就越高。

选项:
–altdir <目录> 改变候选项目录。
–admindir <目录> 设置 statoverride 文件的目录。
–log <文件> 改变日志文件。
–force 就算没有通过自检,也强制执行操作。
–skip-auto 在自动模式中跳过设置正确候选项的提示
(只与 --config 有关)
–verbose 启用详细输出。
–quiet 安静模式,输出尽可能少的信息。不显示输出信息。
–help 显示本帮助信息。
–version 显示版本信息。

  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31
  • 32
  • 33
  • 34
  • 35
  • 36
  • 37
  • 38
  • 39

参考文献:https://blog.csdn.net/zhongxing9006/article/details/80605126

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值