1. 程式人生 > >使用update-alternatives管理多個版本的Python,以及對應版本Python的第三方庫的安裝

使用update-alternatives管理多個版本的Python,以及對應版本Python的第三方庫的安裝

sudo update-alternatives --install /usr/bin/python python /usr/bin/python2.7 1
sudo update-alternatives --install /usr/bin/python python /usr/bin/python3.5 2
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 [email protected]:~$ 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'] >>>
[email protected]:~$ 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']

現在輸入:

[email protected]:~$ 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.
>>> 

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

現在輸入:

[email protected]:~$ 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.
>>> 

最後數字為對應python版本優先順序,數值越大,優先順序越高,設定完成後預設python版本為3.6

選擇適當版本,快速切換至其他版本的python:

[email protected]:~$ 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         手動模式

要維持當前值[*]請按<回車鍵>,或者鍵入選擇的編號:

輸入你想要預設的Python版本對應的數字編號1,2或3即可.

然後根據提示輸入相應版本對應數字即可.

`[email protected]:~$  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                顯示版本資訊。