當你安裝 Debian Linux 時橄登,安裝過程有可能同時為你提供多個可用的 Python 版本,因此系統(tǒng)中會存在多個 Python 的可執(zhí)行二進制文件杖挣。你可以按照以下方法使用 ls 命令來查看你的系統(tǒng)中都有那些 Python 的二進制文件可供使用锻全。
$ ls /usr/bin/python*
/usr/bin/python /usr/bin/python2 /usr/bin/python2.7
/usr/bin/python3 /usr/bin/python3.4 /usr/bin/python3.4m
/usr/bin/python3m
執(zhí)行如下命令查看默認的 Python 版本信息:
$ python --version
Python2.7.8
1、基于用戶修改 Python 版本:
想要為某個特定用戶修改 Python 版本夜焦,只需要在其 home 目錄下創(chuàng)建一個 alias(別名) 即可壳澳。打開該用戶的 ~/.bashrc 文件岂贩,添加新的別名信息來修改默認使用的 Python 版本。
alias python='/usr/bin/python3.4'
一旦完成以上操作巷波,重新登錄或者重新加載 .bashrc 文件萎津,使操作生效。
$ . ~/.bashrc #或者 source ~/.bashrc
檢查當前的 Python 版本抹镊。
$ python --version
Python3.4.2
2锉屈、 在系統(tǒng)級修改 Python 版本
我們可以使用 update-alternatives 來為整個系統(tǒng)更改 Python 版本。以 root 身份登錄垮耳,首先羅列出所有可用的 python 替代版本信息:
# update-alternatives --list python
update-alternatives: error:no alternatives for python
如果出現(xiàn)以上所示的錯誤信息颈渊,則表示 Python 的替代版本尚未被 update-alternatives 命令識別。想解決這個問題终佛,我們需要更新一下替代列表俊嗽,將 python2.7 和 python3.4 放入其中。
# update-alternatives --install /usr/bin/python python /usr/bin/python2.71
update-alternatives:using/usr/bin/python2.7 to provide /usr/bin/python (python)inauto mode
# update-alternatives --install /usr/bin/python python /usr/bin/python3.42
update-alternatives:using/usr/bin/python3.4 to provide /usr/bin/python (python)inauto mode
--install 選項使用了多個參數(shù)用于創(chuàng)建符號鏈接铃彰。最后一個參數(shù)指定了此選項的優(yōu)先級绍豁,如果我們沒有手動來設置替代選項,那么具有最高優(yōu)先級的選項就會被選中牙捉。這個例子中竹揍,我們?yōu)?/usr/bin/python3.4 設置的優(yōu)先級為2,所以 update-alternatives 命令會自動將它設置為默認 Python 版本邪铲。
# python --version
Python3.4.2
接下來芬位,我們再次列出可用的 Python 替代版本。
# update-alternatives --list python
/usr/bin/python2.7
/usr/bin/python3.4
現(xiàn)在開始带到,我們就可以使用下方的命令隨時在列出的 Python 替代版本中任意切換了昧碉。
# update-alternatives --config python
# python --version
Python2.7.8
3、移除替代版本
一旦我們的系統(tǒng)中不再存在某個 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)inauto mode