CentOS 7上默認安裝的python版本是2.7.5,系統(tǒng)自帶的舊版本python被系統(tǒng)很多其他軟件環(huán)境依賴,因此不能卸載原Python,直接選擇Python3.6.5進行全新安裝。

1 安裝Python3.6可能使用的依賴
yum install openssl-devel bzip2-devel expat-devel gdbm-devel readline-devel sqlite-devel gcc gcc-c++
檢查是否安裝了某個軟件
1、rpm包安裝的,可以用 rpm -qa 看到,如果要查找某軟件包是否安裝,用 rpm -qa | grep "軟件或者包的名字"
2、以deb包安裝的,可以用 dpkg -l 看到。如果是查找指定軟件包,用 dpkg -l | grep "軟件或者包的名字"
3、yum方法安裝的,可以用 yum list installed 查找,如果是查找指定包,用 yum list installed | grep "軟件名或者包名"
2 安裝Python3.6.5
1、下載python3.6.5的Linux安裝包
https://www.python.org/ftp/python/3.6.5/Python-3.6.5.tgz
或者使用wget下載,到Python官網(wǎng)找到下載路徑
wget https://www.python.org/ftp/python/3.6.5/Python-3.6.5.tgz
2、使用root權(quán)限打開終端,進行解壓縮操作
tar -zxvf Python-3.6.5.tgz

解壓縮時如果未指定解壓縮目錄,解壓縮完成后,我們可以在當前目錄下看到Python-3.6.5
將目錄進行重命名
mv Python-3.6.5 python3.6
3、修改Setup文件,啟動ssl模塊
vi /opt/python3.6/Modules/Setup.dist
#修改結(jié)果如下:
# Socket module helper for socket(2)
_socket socketmodule.c timemodule.c
# Socket module helper for SSL support; you must comment out the other
# socket line above, and possibly edit the SSL variable:
SSL=/usr/local/ssl
_ssl _ssl.c \
-DUSE_SSL -I$(SSL)/include -I$(SSL)/include/openssl \
-L$(SSL)/lib -lssl -lcrypto
4、編譯安裝包,指定安裝目錄,進入python3.6目錄,執(zhí)行
cd /opt/python3.6
./configure --with-ssl --prefix=/opt/python3.6 # 目錄/opt/python3.6可以根據(jù)自己的喜好隨意選擇,此目錄為python的真正安裝目錄
目錄/opt/python3.6可以根據(jù)自己的喜好隨意選擇,此目錄為python的真正安裝目錄
在./configure過程中,如果沒有加上–with-ssl參數(shù)時,默認安裝的軟件涉及到ssl的功能不可用,剛好pip3過程需要ssl模塊
5、確認無誤后,進入安裝目錄,執(zhí)行編譯
[root@localhost python3.6]# make
6、確認無誤后,執(zhí)行編譯安裝
[root@localhost python3.6]# make install
7、以上步驟執(zhí)行完成,python3.6基本安裝完成;因為系統(tǒng)自帶的是python2.7.5,直接執(zhí)行python命令,所進入默認的python2.6.6的環(huán)境;

8、新建軟連接,指向新安裝的python3.6.5
ln -s /opt/python3.6/bin/python3.6 /usr/bin/python3
/usr/bin/python3 此處路徑不要覆蓋 /usr/bin/python,否則可能會導(dǎo)致系統(tǒng)其它相關(guān)依賴命令無法使用

9、到此為止,即完成了python3.6.5在Centos下的安裝,查看ssl是否安裝成功

安裝pip
Python3.6.5是自帶了pip,我們可以進入python3.6的bin目錄下進行查看你所安裝的Python版本是否自帶pip。

所以安裝好Python后直接創(chuàng)建一個軟連接指向python的pip就可以了,注意,一定要指向pip3,其他的還是會報錯
ln -s /opt/python3.6/bin/pip3 /usr/bin/pip

為了不影響Python2的pip的功能(默認Python2是不帶有pip的),新建軟連接的時候,可以指向pip2
ln -s /opt/python3.6/bin/pip3 /usr/bin/pip3
有時候,我們在使用pip進行操作時,可能會提示pip版本不匹配,需要更新,我們可以執(zhí)行更新命令
pip3 install --upgrade pip
到這里,我們的全部安裝過程就已經(jīng)完成了。