linux下python版本默認為python2.7,下面將通過操作在linux系統下修改python的默認版本。
本文linux系統使用的是ubuntu19。
操作:
1.在shell下輸入python --version查看當前python版本;
root@jack-virtual-machine:/usr/bin# python --version Python 2.7.17 root@jack-virtual-machine:/usr/bin#
2.運行命令 ll /usr/bin/pyth* 查看當前linux系統已經安裝了哪幾個版本的python。
root@jack-virtual-machine:/usr/bin# ll /usr/bin/pyth* lrwxrwxrwx 1 root root 7 Mar 2 01:52 /usr/bin/python -> python2* lrwxrwxrwx 1 root root 9 Oct 10 04:32 /usr/bin/python2 -> python2.7* -rwxr-xr-x 1 root root 3702800 Nov 7 02:07 /usr/bin/python2.7* lrwxrwxrwx 1 root root 9 Feb 24 03:39 /usr/bin/python3 -> python3.7* -rwxr-xr-x 1 root root 5082224 Oct 8 09:47 /usr/bin/python3.7* -rwxr-xr-x 1 root root 5082224 Oct 8 09:47 /usr/bin/python3.7m* -rwxr-xr-x 1 root root 384 Jan 30 2019 /usr/bin/python3-futurize* lrwxrwxrwx 1 root root 10 Feb 24 03:39 /usr/bin/python3m -> python3.7m* -rwxr-xr-x 1 root root 388 Jan 30 2019 /usr/bin/python3-pasteurize* root@jack-virtual-machine:/usr/bin#
3.如果沒有安裝python3版本的需要先進行安裝;
root@jack-virtual-machine:/usr/bin# apt install python3.7 正在讀取軟件包列表... 完成 正在分析軟件包的依賴關系樹 正在讀取狀態信息... 完成 將會同時安裝下列軟件: libpython3.7 libpython3.7-minimal libpython3.7-stdlib python3.7-minimal 建議安裝: python3.7-venv python3.7-doc binfmt-support 下列軟件包將被升級: libpython3.7 libpython3.7-minimal libpython3.7-stdlib python3.7 python3.7-minimal 升級了 5 個軟件包,新安裝了 0 個軟件包,要卸載 0 個軟件包,有 103 個軟件包未被升級。
4.而在shell中輸入命令:python,實際上是讀取/usr/bin/python文件,/usr/bin/python文件是一個軟鏈接文件,並指出python2,而python2又是一個指向python2.7的軟鏈接文件。
root@jack-virtual-machine:/usr/bin# ll /usr/bin/python* lrwxrwxrwx 1 root root 7 Mar 2 01:52 /usr/bin/python -> python2* lrwxrwxrwx 1 root root 9 Oct 10 04:32 /usr/bin/python2 -> python2.7* -rwxr-xr-x 1 root root 3702800 Nov 7 02:07 /usr/bin/python2.7* lrwxrwxrwx 1 root root 9 Feb 24 03:39 /usr/bin/python3 -> python3.7* -rwxr-xr-x 1 root root 5082224 Oct 8 09:47 /usr/bin/python3.7* -rwxr-xr-x 1 root root 5082224 Oct 8 09:47 /usr/bin/python3.7m* -rwxr-xr-x 1 root root 384 Jan 30 2019 /usr/bin/python3-futurize* lrwxrwxrwx 1 root root 10 Feb 24 03:39 /usr/bin/python3m -> python3.7m* -rwxr-xr-x 1 root root 388 Jan 30 2019 /usr/bin/python3-pasteurize* root@jack-virtual-machine:/usr/bin# ll /usr/bin/python lrwxrwxrwx 1 root root 7 Mar 2 01:52 /usr/bin/python -> python2* root@jack-virtual-machine:/usr/bin# ll /usr/bin/python2 lrwxrwxrwx 1 root root 9 Oct 10 04:32 /usr/bin/python2 -> python2.7* root@jack-virtual-machine:/usr/bin#
5.通過更改/usr/bin/python的指向就能實現更改python默認版本,由於軟鏈接文件不支持修改,所以先刪除,再重新指向。
刪除python軟鏈接文件: rm -rf python
重新創建新指向 python:ln -s /usr/bin/python3 python
root@jack-virtual-machine:/usr/bin# root@jack-virtual-machine:/usr/bin# rm -rf python root@jack-virtual-machine:/usr/bin# python --version bash: /usr/bin/python: 沒有那個文件或目錄 root@jack-virtual-machine:/usr/bin# ln -s /usr/bin/python3 python root@jack-virtual-machine:/usr/bin#
6.檢查當前python版本;
root@jack-virtual-machine:/usr/bin# root@jack-virtual-machine:/usr/bin# python Python 3.7.5rc1 (default, Oct 8 2019, 16:47:45) [GCC 9.2.1 20191008] on linux Type "help", "copyright", "credits" or "license" for more information. >>> exit() root@jack-virtual-machine:/usr/bin# python --version Python 3.7.5rc1 root@jack-virtual-machine:/usr/bin#
7.如果改回python2,同理先刪除,再重新創建。
刪除python軟鏈接文件: rm -rf python
重新創建新指向 python:ln -s python2 python
root@jack-virtual-machine:/usr/bin# root@jack-virtual-machine:/usr/bin# rm -rf python root@jack-virtual-machine:/usr/bin# ln -s python2 python root@jack-virtual-machine:/usr/bin# root@jack-virtual-machine:/usr/bin# python --version Python 2.7.17 root@jack-virtual-machine:/usr/bin#
參考文檔:https://jingyan.baidu.com/article/0f5fb0992adeeb6d8334ea12.html