1. 程式人生 > 實用技巧 >Centos7 升級Python

Centos7 升級Python

Centos7 升級Python

CentOS 7 中預設安裝了 Python,版本比較低(2.7.5),為了使用新版 3.x,需要對舊版本進行升級。由於很多基本的命令、軟體包都依賴舊版本,比如:yum。所以,在更新 Python 時,建議不要刪除舊版本(新舊版本可以共存)。

檢視當前版本

[root@node python-3.8.5]# python -V
Python 2.7.5

安裝新版本

下載地址https://www.python.org/downloads/,選擇自己要使用的版本,我這裡使用3.8.5

#安裝依賴  已安裝的可以忽略
[root@node python-3.8.5]# yum install gcc gcc-c++ libffi-devel python-setuptools vim wget make sqlite-devel zlib*  bzip2-devel openssl-devel ncurses-devel readline-devel tk-devel  -y 
#切換目錄
[root@node python-3.8.5]# cd /opt
#下載
[root@node python-3.8.5]# wget https://www.python.org/ftp/python/3.8.5/Python-3.8.5.tgz
#解壓
[root@node python-3.8.5]# tar -zxvf Python-3.8.5.tgz
#切換到解壓目錄
[root@node python-3.8.5]# cd /opt/Python-3.8.5
#配置
[root@node python-3.8.5]# ./configure --with-ssl
#編譯
[root@node python-3.8.5]# make
#安裝
[root@node python-3.8.5]# make install

設定預設版本

[root@node python-3.8.5]# python3 -V
Python 3.8.5
  • 將原來 python 的軟連結重新命名:

    [root@node python-3.8.5]# mv /usr/bin/python /usr/bin/python.bak
    
  • 將 python 連結至 python3:

    [root@node python-3.8.5]# ln -s /usr/local/bin/python3 /usr/bin/python
    

修復yum

升級 Python 之後,由於將預設的 python 指向了 python3,yum 不能正常使用,使用yum的時候會報以下錯誤

File "/usr/bin/yum", line 30
    except KeyboardInterrupt, e:
                            ^
SyntaxError: invalid syntax

修改/usr/bin/yum/usr/libexec/urlgrabber-ext-down,將 #!/usr/bin/python 改為 #!/usr/bin/python2.7,儲存退出即可。

升級pip

sudo pip3 install --upgrade pip