雖然大部分的小伙伴都是使用Windows系統(tǒng),但還是有一小部分小伙伴是使用linux系統(tǒng)的。這部分使用linux系統(tǒng)的小伙伴在學(xué)習(xí)python的時(shí)候會(huì)遇到一些難題,比如說(shuō)linux安裝python和linux更新python。為什么說(shuō)上面兩個(gè)操作是一些難題呢?這些難題又該如何解決呢?接下來(lái)這篇文章告訴你。
原因
首先,linux系統(tǒng)是需要python依賴的,沒有python依賴的話linux就會(huì)出現(xiàn)很多錯(cuò)誤,所以linux已經(jīng)內(nèi)置了python解釋器。對(duì)于學(xué)習(xí)python的人來(lái)說(shuō)好像是個(gè)福音,因?yàn)橄到y(tǒng)里面有了解釋器我們就不需要安裝了,但實(shí)際上系統(tǒng)內(nèi)置的解釋器的版本是2.7版本的,是已經(jīng)停止維護(hù)的python版本,而且很多python的教程和python第三方庫(kù)都是python3版本的了(有些已經(jīng)不支持Python2的版本了),這時(shí)候系統(tǒng)自帶的版本就已經(jīng)不能滿足我們的學(xué)習(xí)需要了。另外,我們?nèi)绻褂酶采w安裝的話,系統(tǒng)一旦沒了python2.7版本的解釋器就會(huì)崩潰(不要問(wèn)為什么都是python,高版本的python不是更好嗎為什么會(huì)崩潰,因?yàn)橄到y(tǒng)依賴的是指定版本的python,而不是更好用的python,沒了指定版本的python運(yùn)行就會(huì)崩潰),所以linux的python安裝和更新都不能動(dòng)到原來(lái)的python解釋器。
有些系統(tǒng)已經(jīng)將內(nèi)置的python版本更新到了python3的版本,單這并不意味著本篇文章沒有價(jià)值。
下載
了解了linux的一些基本情況后,我們就要去下載linux的python版本來(lái)安裝了,下載的話自行前往官網(wǎng)下載即可。
官網(wǎng)鏈接:https://www.python.org/
與Windows和macOS不同,linux沒有單獨(dú)的安裝器,只能通過(guò)源代碼編譯的方式編譯python,所以在下載的時(shí)候要選擇下載源代碼版本,另外盡量選擇tar.gz版本。
另一種解決方式是:很多l(xiāng)inux系統(tǒng)都有應(yīng)用下載商店(或者軟件包管理器)可以嘗試在這些地方找找有沒有python可供下載。
解壓
下載后得到一個(gè)tar.gz的壓縮包,在壓縮包所在目錄使用tar命令將壓縮包解壓得到一個(gè)python文件夾。
解壓命令:?tar -zxvf 壓縮包名稱
?
準(zhǔn)備編譯環(huán)境
在編譯python之前需要準(zhǔn)備安裝環(huán)境,使用下面的命令就可以準(zhǔn)備好安裝python所需要的依賴了。
yum -y install zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel readline-devel tk-devel libffi-devel gcc make
以上命令是Redhat系系統(tǒng)獨(dú)有的包管理工具yum存在的情況下執(zhí)行的,其他系的linux系統(tǒng)需要先安裝yum或者使用其他方式安裝對(duì)應(yīng)依賴。
由上圖我們也可以得知,yum命令需要有管理員權(quán)限,如果是root用戶的話可以忽略這點(diǎn),非root用戶可以跟小編一樣使用sudo暫時(shí)獲取管理員權(quán)限。
編譯安裝
依次輸入如下三個(gè)命令:
./configure --prefix=/root/training/Python-3.6.5
make
make install
其中--prefix是Python的安裝目錄。另外最后一個(gè)命令也需要管理員權(quán)限,操作方法也是使用sodo暫時(shí)提權(quán)。安裝成功后,如圖:
到此我們就安裝好python了。
添加軟鏈接
安裝完后我們可以到安裝路徑下查看我們的python目錄。
在命令行輸入如下命令就可以將軟鏈接添加進(jìn)去了:
小結(jié)
以上就是linux如何安裝python的全部?jī)?nèi)容了,關(guān)于linux更新python實(shí)際上就是安裝更新版本的python進(jìn)去,小編就不多做介紹了,更多python學(xué)習(xí)知識(shí)的了解關(guān)注W3Cschool。