Centos7自帶python2.7,我們不對它進(jìn)行升級,而是使用源碼安裝python3,讓二者共存。
這樣可以保證系統(tǒng)中使用python2.7的軟件正常運(yùn)行。
首先看看成功安裝python3后,軟鏈接的依賴關(guān)系,也包括python2.7的依賴關(guān)系:
[root@localhost ~]# ll /usr/bin/python*
lrwxrwxrwx. 1 root root 7 Jun 13 06:30 /usr/bin/python -> python2
lrwxrwxrwx. 1 root root 9 Jun 13 06:30 /usr/bin/python2 -> python2.7
-rwxr-xr-x. 1 root root 7216 Apr 9 10:31 /usr/bin/python2.7
lrwxrwxrwx. 1 root root 33 Jun 13 07:09 /usr/bin/python3 -> /usr/local/python3Dir/bin/python3
[root@localhost ~]#
一般使用python2.7的程序開頭會這樣寫:
#! /usr/bin/python
而使用python3的程序開頭會這樣寫:
#!/usr/bin/python3
或這樣寫:
#!/usr/bin/env python3
#!/usr/bin/python是告訴操作系統(tǒng)執(zhí)行這個腳本的時候,調(diào)用/usr/bin下的python解釋器, #!/usr/bin/python3也是這個意思,相當(dāng)于寫死了python或python3的路徑;
#!/usr/bin/env python3這種用法是為了防止操作系統(tǒng)用戶沒有將python3裝在默認(rèn)的/usr/bin路徑里。當(dāng)系統(tǒng)看到這一行的時候,首先會到env設(shè)置里查找python3的安裝路徑,再調(diào)用對應(yīng)路徑下的解釋器程序完成操作,推薦這種寫法。
1、以Python-3.6.3.tgz為例描述安裝過程:
下載源碼包:
下載python3的源碼包的地址:https://www.python.org/ftp/python/
# mkdir /usr/local/python3
# cd /usr/local/python3
# wget https://www.python.org/ftp/python/3.6.3/Python-3.6.3.tgz
解壓縮,進(jìn)入源碼包目錄:
# tar -zxvf Python-3.6.3.tgz
# cd Python-3.6.3/
編譯、安裝:
# ./configure --prefix=/usr/local/python3Dir
# make
# make install
make install的時候遇到了一個問題:
zipimport.ZipImportError: can’t decompress data; zlib not available
make: * [install] Error 1
從錯誤信息分析,就是缺少了zlib的解壓縮類庫,安裝即可:
# yum -y install zlib*
然后重新 make install 安裝python3就沒問題了。
2、基本配置
創(chuàng)建軟鏈接:
注意:不要覆蓋原有的python軟鏈接?。。》駝t許多依賴python的軟件將無法使用。
# ln -s /usr/local/python3Dir/bin/python3 /usr/bin/python3
添加環(huán)境變量:
1)永久的添加系統(tǒng)的環(huán)境變量:
系統(tǒng)永久環(huán)境變量設(shè)置方法是修改
/etc/profile
文件。在文件末尾添加代碼并保存。
也可以修改
/etc/environment
文件。
在/etc/profile文件末尾添加:
export PATH=$PATH:/usr/local/python3Dir/bin
部分系統(tǒng)需要系統(tǒng)重啟后/etc/profile文件生效,source命令可以讓環(huán)境變量立即生效。
2)永久地添加用戶的環(huán)境變量:
用戶級別永久環(huán)境變量需要修改當(dāng)前用戶的
~/.bashrc
文件。
也可以修改當(dāng)前用戶的
~/.bash_profile
文件。
同樣將 export PATH=$PATH:/usr/local/python3Dir/bin 添加至文件末尾即可。
建議運(yùn)行前先通過echo 命令檢查是否生效。
3、檢查是否安裝成功:
查看版本:
[fxw1@localhost ~]$ python -V
Python 2.7.5
[fxw1@localhost ~]$ python3 -V
Python 3.6.3
[fxw1@localhost ~]$
運(yùn)行程序:
[fxw1@localhost ~]$ python3
Python 3.6.3 (default, Jun 13 2019, 06:59:07)
[GCC 4.8.5 20150623 (Red Hat 4.8.5-36)] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> print("hello world!")
hello world!
>>> exit()
[fxw1@localhost ~]$
更多文章、技術(shù)交流、商務(wù)合作、聯(lián)系博主
微信掃碼或搜索:z360901061

微信掃一掃加我為好友
QQ號聯(lián)系: 360901061
您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點(diǎn)擊下面給點(diǎn)支持吧,站長非常感激您!手機(jī)微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點(diǎn)擊微信右上角掃一掃功能,選擇支付二維碼完成支付。
【本文對您有幫助就好】元
