Python是世界上使用最廣泛的編程語言之一。Python語法簡單易學,是初學者和有經(jīng)驗的開發(fā)人員的熱門選擇。Python是一種非常通用的編程語言。它可以用于構(gòu)建各種應(yīng)用程序,從簡單的憑證到復雜的機器學習算法。
CentOS 8包含Python 3.6版本,可以使用dnf工具安裝或更新。
在撰寫本文時,Python 3.8是Python語言的最新主要版本。它包括許多新特性,如賦值表達式、僅定位的參數(shù)、f-string支持等等。Python 3.8在標準的CentOS 8存儲庫中不可用。
本指南解釋了如何從源代碼在CentOS 8上構(gòu)建Python 3.8。我們還將向您展示如何創(chuàng)建虛擬環(huán)境。
在CentOS 8上安裝Python 3.8
從源代碼編譯Python需要C/C++編譯器和其他開發(fā)包。首先要做的是在CentOS 8上安裝構(gòu)建Python所需的包。為此,作為root或sudo用戶運行以下命令:
[root@localhost /home/linuxidc/www.linuxidc.com]$dnf groupinstall ‘development tools’
[root@localhost /home/linuxidc/www.linuxidc.com]$dnf install bzip2-devel expat-devel gdbm-devel
ncurses-devel openssl-devel readline-devel
sqlite-devel tk-devel xz-devel zlib-devel wget
使用wget從Python下載頁面下載最新版本的源代碼。 當前,最新的Python 3.8版本是3.8.1。 如果有可供下載的新版本,請在以下命令中更改VERSION變量:
[root@localhost /home/linuxidc/www.linuxidc.com]$VERSION=3.8.1
[root@localhost /home/linuxidc/www.linuxidc.com]$wget https://www.python.org/ftp/python/${VERSION}/Python-${VERSION}.tgz
下載完成后,解壓縮剛下載的文件:
[root@localhost /home/linuxidc/www.linuxidc.com]$tar -xf Python-${VERSION}.tgz
轉(zhuǎn)到Python源目錄并運行configure腳本,該腳本執(zhí)行許多檢查以確保系統(tǒng)上的所有依賴項都存在:
[root@localhost /home/linuxidc/www.linuxidc.com]$cd Python-${VERSION}
[linuxidc@localhost ~/www.linuxidc.com/Python-3.8.1]$./configure –enable-optimizations
–enable-optimizations選項通過運行多個測試來優(yōu)化Python二進制文件。 這會使構(gòu)建過程變慢。
通過運行以下命令啟動Python 3.8構(gòu)建過程:
[linuxidc@localhost ~/www.linuxidc.com/Python-3.8.1]$make -j 4
修改-j以對應(yīng)于處理器中的內(nèi)核數(shù)。 您可以通過鍵入nproc查找編號。
構(gòu)建過程完成后,安裝Python二進制文件:
[linuxidc@localhost ~/www.linuxidc.com/Python-3.8.1]$sudo make altinstall
請不要使用標準的make install,因為它將覆蓋默認的系統(tǒng)Python二進制文件。
OK。 CentOS系統(tǒng)上已經(jīng)安裝了Python 3.8,您可以開始使用它了。 通過鍵入以下內(nèi)容進行驗證:
[linuxidc@localhost ~/www.linuxidc.com]$python3.8 –version
Python 3.8.1
[linuxidc@localhost ~/www.linuxidc.com]$python3
Python 3.6.8 (default, Nov 21 2019, 19:31:34)
[GCC 8.3.1 20190507 (Red Hat 8.3.1-4)] on linux
Type “help”, “copyright”, “credits” or “license” for more information.
>>>
輸出應(yīng)顯示Python版本:
創(chuàng)建虛擬環(huán)境
Python虛擬環(huán)境是一個獨立的目錄樹,其中包括Python安裝和許多其他軟件包。 它允許您將Python模塊安裝在特定項目的隔離位置,而不是全局安裝。 這樣,您不必擔心會影響其他Python項目。
在此示例中,我們將在用戶主目錄內(nèi)創(chuàng)建一個名為linuxidc_app的新Python 3.8項目。
首先,創(chuàng)建項目目錄并切換到該目錄:
[linuxidc@localhost ~/www.linuxidc.com]$mkdir ~/linuxidc_app && cd ~/linuxidc_app
在項目根目錄內(nèi)部,運行以下命令以創(chuàng)建一個名為linuxidc_app_venv的虛擬環(huán)境:
[linuxidc@localhost ~/linuxidc_app]$python3.8 -m venv linuxidc_app_venv
激活環(huán)境:
[linuxidc@localhost ~/linuxidc_app]$source linuxidc_app_venv/bin/activate
激活后,shell提示符將以環(huán)境名稱為前綴。 從Python 3.4開始,在創(chuàng)建虛擬環(huán)境pip時,默認情況下會安裝Python的軟件包管理器。
在虛擬環(huán)境中,您可以使用pip代替pip3.8,并使用python代替python3.8:
(linuxidc_app_venv) [linuxidc@localhost ~/linuxidc_app]$python -V
Python 3.8.1
完成停用環(huán)境的工作后,鍵入deactivate,您將返回到常規(guī)shell。
(linuxidc_app_venv) [linuxidc@localhost ~/linuxidc_app]$deactivate
這些命令截圖:
總結(jié)
我們向您展示了如何在CentOS 8機器上安裝Python 3.8以及如何創(chuàng)建虛擬環(huán)境。 現(xiàn)在,您可以開始開發(fā)Python 3項目。
如果您有任何疑問或反饋,請在下面發(fā)表評論。
更多Python相關(guān)信息見Python 專題頁面 http://www.sfodin.cn/topicnews.aspx?tid=17