目錄
注意事項
一、安裝不同 Python 版本
1. 安裝依賴
2. 下載 Python 源碼
3. 解壓并編譯安裝
二、管理多個 Python 版本
1. 查看已安裝的 Python 版本
2. 配置環境變量
3. 使用 update-alternatives? 管理 Python 版本
三、使用虛擬環境為項目指定特定 Python 版本
1. 使用 venv? 創建虛擬環境
2. 激活虛擬環境
3. 在虛擬環境中安裝依賴
4. 退出虛擬環境
四、注意事項
五、(可選)使用 Poetry 管理虛擬環境并指定 Python 版本(使用 pip 安裝 Poetry)
1. 使用 pip 安裝 Poetry
2. 在創建虛擬環境時指定 Python 版本
3. 激活虛擬環境
4. 安裝依賴
5. 退出虛擬環境
額外提示
注意事項
Ubuntu 24 系統已預裝 Python 3.12,在大多數常規場景下,該版本足以滿足使用需求,因此通常無需額外安裝其他 Python 版本。
需要特別注意的是,Ubuntu 系統的部分核心組件和默認命令依賴于系統自帶的 Python 3.12 版本。隨意更改系統默認的 Python 版本,極有可能導致這些依賴 Python 的系統命令無法正常運行,嚴重時甚至會影響系統的穩定性和正常使用。例如,apt? 作為 Ubuntu 重要的包管理工具,其正常運行依賴于特定版本的 Python 環境,若更改默認 Python 版本與 apt? 依賴不兼容,就會致使 apt? 無法正常工作。所以,若非有特殊的項目需求,建議盡量使用系統默認的 Python 3.12 版本;若確實需要使用其他版本,建議通過虛擬環境的方式來實現,避免對系統默認 Python 環境造成影響。
sudo update-alternatives --display python3
我此時已經安裝了兩個版本的python
一、安裝不同 Python 版本
1. 安裝依賴
安裝編譯 Python 所需的依賴庫,確保后續編譯過程順利進行。在終端中執行以下命令:
sudo apt update
sudo apt install -y build-essential zlib1g-dev libncurses5-dev libgdbm-dev libnss3-dev libssl-dev libreadline-dev libffi-dev wget
2. 下載 Python 源碼
點我去python的版本歸檔
借助 wget? 命令從 Python 官方網站下載所需的 Python 版本源碼包。為了加快下載速度,可使用國內的鏡像源,例如清華大學的 Python 鏡像源。
以 Python 3.10.11 為例:
wget https://mirrors.tuna.tsinghua.edu.cn/python/3.10.11/Python-3.10.11.tgz
3. 解壓并編譯安裝
下載完成后,對源碼包進行解壓,然后進行編譯和安裝操作。
# 解壓文件
tar -zxvf Python-3.10.11.tgz
# 進入解壓后的目錄
cd Python-3.10.11
# 配置編譯選項,--prefix 指定安裝路徑
./configure --prefix=/usr/local/python3.10.11 --enable-optimizations
# 編譯,使用 -j 選項利用多核 CPU 加速編譯
make -j$(nproc)
# 安裝
sudo make altinstall
這里使用 altinstall? 而不是 install?,是為了避免覆蓋系統默認的 Python 版本。
二、管理多個 Python 版本
1. 查看已安裝的 Python 版本
安裝完成后,可通過以下命令查看已安裝的 Python 版本:
ls /usr/bin | grep python
2. 配置環境變量
為方便使用不同版本的 Python,需要將其可執行文件路徑添加到環境變量中。編輯 ~/.bashrc? 文件:
nano ~/.bashrc
在文件末尾添加以下內容(以 Python 3.10.11 為例):
export PATH="/usr/local/python3.10.11/bin:$PATH"
保存并退出文件,然后使配置生效:
source ~/.bashrc
3. 使用 update-alternatives? 管理 Python 版本
?update-alternatives? 是 Ubuntu 系統中用于管理多版本軟件的工具。可以通過它來查看和切換系統默認使用的 Python 版本。
- 查看 Python 3 替代項信息:
sudo update-alternatives --display python3
執行該命令后,會顯示系統中所有 Python 3 版本的替代項信息,包括每個版本的路徑、優先級等。示例輸出如下:
從輸出中可以看到每個 Python 版本的優先級,優先級越高,在自動模式下越優先被使用。
- 手動切換 Python 3 版本:
如果需要手動切換系統默認使用的 Python 3 版本,可以執行以下命令:
sudo update-alternatives --config python3
執行該命令后,會列出所有可用的 Python 3 版本,你可以輸入對應的編號來選擇要使用的版本。
三、使用虛擬環境為項目指定特定 Python 版本
1. 使用 venv? 創建虛擬環境
?venv? 是 Python 自帶的虛擬環境管理工具。以使用 Python 3.10.11 創建虛擬環境為例:
/usr/local/python3.10.11/bin/python3 -m venv my_project_env
?my_project_env? 是虛擬環境的名稱,可根據實際情況修改。
2. 激活虛擬環境
source my_project_env/bin/activate
激活后,終端提示符前會顯示虛擬環境的名稱。
3. 在虛擬環境中安裝依賴
在激活的虛擬環境中,可以使用 pip? 安裝項目所需的依賴:
pip install package_name
4. 退出虛擬環境
當項目使用完畢后,可使用以下命令退出虛擬環境:
deactivate
四、注意事項
- 避免覆蓋系統默認 Python:使用 altinstall? 安裝 Python 版本,防止替換系統默認的 Python 版本,以免影響系統的正常運行。
- 鏡像源的使用:在下載 Python 源碼包和使用 pip? 安裝依賴時,可使用國內的鏡像源,如清華大學、阿里云等,以提高下載速度。例如,使用清華大學的 pip? 鏡像源:
pip install -i https://pypi.tuna.tsinghua.edu.cn/simple package_name
- 虛擬環境的管理:為每個項目創建獨立的虛擬環境,避免不同項目之間的依賴沖突。
通過以上步驟,可以在中國網絡環境下方便地安裝多個 Python 版本,同時讓系統繼續使用默認版本,項目使用特定版本。
五、(可選)使用 Poetry 管理虛擬環境并指定 Python 版本(使用 pip 安裝 Poetry)
1. 使用 pip 安裝 Poetry
Poetry 是一個強大的 Python 依賴管理和打包工具,同時也能出色地管理虛擬環境。你可以使用 pip? 來安裝它,為確保安裝的是用戶級別的 Poetry,避免權限問題,可執行以下命令:
pip install --user poetry
以下步驟參考你前面有沒有執行這個
安裝完成后,要將 Poetry 的可執行文件路徑添加到環境變量里。編輯 ~/.bashrc? 文件:
nano ~/.bashrc
在文件末尾添加如下內容:
export PATH="$HOME/.local/bin:$PATH"
保存并退出文件,接著讓配置生效:
source ~/.bashrc
2. 在創建虛擬環境時指定 Python 版本
要是你還未用 Poetry 為項目創建過虛擬環境,可使用 poetry env use? 命令來指定 Python 版本并創建虛擬環境。
步驟
- 確認可用的 Python 版本路徑
先找到你想要使用的 Python 版本的可執行文件路徑。可以通過 which? 命令來查看特定版本 Python 的路徑,例如查看 Python 3.10 的路徑:
which python3
通常輸出可能類似 /usr/local/bin/python3.10? 。
- 使用 poetry env use? 命令創建虛擬環境
使用上一步獲取的 Python 可執行文件路徑來創建虛擬環境,示例如下:
poetry env use /usr/local/bin/python3
執行該命令后,Poetry 會依據指定的 Python 版本創建一個新的虛擬環境。
3. 激活虛擬環境
Poetry 會自動為項目創建虛擬環境,你可以使用以下命令激活該虛擬環境:
poetry shell
激活之后,終端提示符前會顯示虛擬環境的名稱。
4. 安裝依賴
在激活的虛擬環境中,你可以使用 Poetry 安裝項目所需的依賴。例如,安裝 requests? 庫:
poetry add requests
Poetry 會自動管理依賴的版本,并且將其記錄在 pyproject.toml? 和 poetry.lock? 文件中。
5. 退出虛擬環境
當項目使用完畢后,可使用以下命令退出虛擬環境:
exit
額外提示
- 更新 Poetry:若要更新已安裝的 Poetry 版本,可執行 pip install --user --upgrade poetry? 命令。
- 配置鏡像源:在國內網絡環境下,為提升依賴下載速度,你可以配置 Poetry 使用國內鏡像源。例如,配置為阿里云鏡像源:
poetry config repositories.aliyun https://mirrors.aliyun.com/pypi/simple/
poetry config installer.max-workers 10
poetry config virtualenvs.in-project true
上述命令依次完成了鏡像源的配置、設置最大下載線程數以及讓虛擬環境在項目目錄內創建。