Python版本管理工具pyenv
安裝
Mac下直接使用Homebrew安裝
# 更新 Homebrew 的軟件列表
brew update
# 安裝pyenv
brew install pyenv
# 驗證是否安裝成功
pyenv -v
然后執(zhí)行下述命令,其會自動檢測你所使用的shell環(huán)境,并提示如何配置shell環(huán)境
pyenv init
這里我們使用的Shell是zsh,故將相關配置添加到用戶目錄下的.zshrc文件即可
# Zsh Shell配置
export PYENV_ROOT="$HOME/.pyenv"
command -v pyenv >/dev/null || export PATH="$PYENV_ROOT/bin:$PATH"
eval "$(pyenv init -)"
常用命令
查看可安裝的Python版本
pyenv install --list
pyenv install -l
安裝指定版本Python
pyenv install <version>
# 安裝3.11.1版本的Python
pyenv install 3.11.1
查看已安裝版本Python、當前活動的Python版本
同時會在當前被激活的版本前添加星號。如果未激活任何版本Python,則默認在system行顯示星號
# 查看已安裝的Python版本
pyenv versions
# 顯示當前活動的Python版本
pyenv version
卸載指定版本Python
pyenv uninstall <version>
# 卸載3.11.1版本的Python
pyenv uninstall 3.11.1
切換Python版本
1. 設置全局的Python版本
# 設置 全局的Python版本
pyenv global <version>
# 查看 全局的Python版本設置
pyenv global
3. 設置當前目錄下的Python版本
后續(xù)進入該目錄后,會自動切換到此前設置的Python版本。具體地,其會在該目錄下生成一個.python-version文件,用于記錄設置的Python版本信息。顯然,該設置的優(yōu)先級高于全局的Python版本
# 設置 當前目錄下的Python版本
pyenv local <version>
# 顯示 當前目錄下的Python版本設置
pyenv local
# 取消 當前目錄下的Python版本設置
pyenv local --unset
3. 設置當前Shell會話的Python版本
該設置的優(yōu)先級高于 基于目錄設置的Python版本 和 全局的Python版本
# 設置 當前Shell會話的Python版本
pyenv shell <version>
# 查看 當前Shell會話的Python版本設置
pyenv shell
# 取消 當前Shell會話的Python版本設置
pyenv shell --unset
總結下,三種不同Python版本設置的優(yōu)先級依次遞減
shell > local > global
鏡像加速
pyenv安裝python是從python官網(wǎng)下載的,速度非常慢。雖然不能直接更改pyenv下載的鏡像源。但我們可以將從其他地方下載的安裝包放置在 ~/.pyenv/cache/ 目錄下,這樣pyenv就會利用本地文件進行安裝。這里我們利用Shell定義一個pyinstall函數(shù),腳本文件pyenvFunc.sh內(nèi)容如下
#!/usr/local/bin/zsh
# 從國內(nèi)鏡像源下載Python壓縮包,并使用pyenv進行安裝
function pyinstall() {
py_version=$1
echo "準備安裝 Python ${py_version}"
# 確保cache目錄存在
pyenv_cache_dir=~/.pyenv/cache/
mkdir -p ${pyenv_cache_dir}
# Python壓縮包的文件名
pyenv_cache_file=Python-${py_version}.tar.xz
# Python壓縮包的完整存放路徑
pyenv_cache_file_path=${pyenv_cache_dir}${pyenv_cache_file}
# 從指定地址下載Python壓縮包
curl -L https://npm.taobao.org/mirrors/python/${py_version}/Python-${py_version}.tar.xz -o ${pyenv_cache_file_path}
# 安裝Python
pyenv install ${py_version}
echo "Python ${py_version} 安裝成功啦~~~"
# 刪除Python壓縮包
cd ${pyenv_cache_dir}
rm ${pyenv_cache_file}
}
由于我們使用的Shell是zsh,故在用戶目錄下的.zshrc文件中引用pyenvFunc.sh腳本即可
...
# 引用pyinstall函數(shù):從國內(nèi)鏡像源下載Python壓縮包,并使用pyenv進行安裝
source ~/CustomShellScript/pyenvFunc.sh
...
至此就可以使用pyinstall命令來安裝不同版本的python了
評論
圖片
表情
