當我們在Ubuntu上使用Python進行開發的時候,可能會遇到版本不兼容的問題,當然你可以選擇使用apt的方式安裝不同版本的python環境
但是存在一定的問題:安裝不同版本的Python通常不會改變默認的python3命令指向的版本,而且就算你進行了修改,內部的很多配置還是會使用原來的版本無法做到一次替換整體替換(而且很多報錯,不推薦!!!)
那么接下來介紹pyenv啦
pyenv
1. 安裝依賴項
首先,你需要安裝pyenv的一些依賴項,包括git(如果你打算從Git倉庫克隆pyenv),curl(雖然在這個特定情況下不是必需的,但它是Ubuntu上常用的工具),make,build-essential,libssl-dev,zlib1g-dev,libbz2-dev,libreadline-dev,libsqlite3-dev,wget,curl,llvm,libncurses5-dev,libncursesw5-dev,xz-utils,tk-dev和libffi-dev。
打開終端,然后運行以下命令來安裝這些依賴項:
sudo apt-get update
sudo apt-get install -y git make build-essential libssl-dev zlib1g-dev libbz2-dev libreadline-dev libsqlite3-dev wget curl llvm libncurses5-dev libncursesw5-dev xz-utils tk-dev libffi-dev
2. 安裝pyenv
有幾種方法可以安裝pyenv,但最常見的是通過Git克隆其GitHub倉庫到你的用戶主目錄下的一個.pyenv目錄中。
首先,確定你的主目錄(通常是/home/你的用戶名),然后克隆pyenv倉庫:
cd ~
git clone https://github.com/pyenv/pyenv.git ~/.pyenv
如果出現連接超時的報錯,先試試能不能ping通GitHub(畢竟是國外的網站) ping www.github.com
3. 配置環境變量
接下來,你需要配置你的shell以包含pyenv。這通常涉及到在你的shell配置文件中(如.bashrc,.bash_profile,.zshrc等)添加幾行。
對于Bash用戶,打開你的~/.bashrc文件并添加以下行:
export PYENV_ROOT="$HOME/.pyenv"
export PATH="$PYENV_ROOT/bin:$PATH" # 如果你的shell是bash,請啟用下面的命令
if [ -d "$PYENV_ROOT/shims" ]; then export PATH="$PYENV_ROOT/shims:$PATH"
fi
# 初始化pyenv(對于bash shell)
eval "$(pyenv init --path)"
eval "$(pyenv init -)"
對于Zsh用戶,打開你的~/.zshrc文件并添加類似的行。
4. 應用更改
為了使更改生效,你需要重新加載你的shell配置文件或重新打開你的終端。
對于Bash用戶,你可以通過運行source ~/.bashrc
來重新加載配置文件。
5. 驗證安裝
最后,驗證pyenv是否已正確安裝。在你的終端中運行以下命令:
pyenv --version
如果一切設置正確,你將看到pyenv的版本號。
# 類似于這樣
hx@LAPTOP-H2EI4I6A:~/test/backend$ pyenv --version
pyenv 2.4.7
6. 使用pyenv
現在,你可以開始使用pyenv來安裝和管理不同版本的Python了。
6.1 安裝
例如,要安裝Python 3.8.5,你可以運行:
pyenv install 3.8.5
hx@LAPTOP-H2EI4I6A:~/test/backend$ pyenv install 3.8.5
Downloading Python-3.8.5.tar.xz...
-> https://www.python.org/ftp/python/3.8.5/Python-3.8.5.tar.xz
假如說你一直卡在這種情況(那么就是網絡問題啦,因為pyenv會自動到github上下載,速度超慢,這邊給大家推薦通過鏡像網站下載)
cd ~/.pyenv
sudo mkdir cache
sudo wget -c https://mirrors.huaweicloud.com/python/3.12.2/Python-3.12.2.tar.xz -P ~/.pyenv/cache/
pyenv install 3.12.2 -v
首先先打開這個網址找到自己想下的版本https://mirrors.huaweicloud.com/python進行版本號替換
6.2 列出所有版本
要列出所有已安裝的Python版本,你可以運行:
pyenv versions
要列出pyenv所有能下載的版本,可以運行:
pyenv install --list
6.3 設置版本
要設置全局Python版本,你可以運行:
pyenv global 3.8.5
要在特定目錄下設置Python版本,你可以在該目錄下運行:(記得切換目錄)
pyenv local 3.8.5
這樣,你就成功地在Ubuntu上安裝了pyenv并可以開始使用它來管理Python版本了。
6.4 查看當前Python版本
python3 --version
6.5 刪除指定Python版本
pyenv uninstall 3.12.2
7. 刪除pyenv
rm -rf ~/.pyenv