MacOS使用pyenv和brew優(yōu)雅管理Python多版本環(huán)境
本文采用「pyenv + Homebrew」方案,為 MacOS 搭建干凈、隔離的 Python 多版本環(huán)境,徹底避免污染系統(tǒng)自帶 Python,完美適配不同項目版本需求。
一、前置依賴安裝(必做)
Python 編譯安裝需依賴 Xcode 命令行工具和一系列編譯庫,首先確保你的 Mac 安裝了必要的依賴,避免后續(xù)報錯。
Xcode 命令行工具和 Homebrew 的安裝可以參考:MacOS上Homebrew 安裝、配置、更改國內(nèi)鏡像源及使用圖文詳解
安裝完成后,執(zhí)行 brew -v 驗(yàn)證,輸出版本號(如 brew 4.2.18)即表示安裝/升級成功。
二、安裝并配置 pyenv
pyenv 是一款輕量的 Python 版本管理工具,可輕松實(shí)現(xiàn)多版本切換,先完成 pyenv 的安裝和環(huán)境配置。
2.1 安裝 pyenv
通過 Homebrew 快速安裝 pyenv,執(zhí)行命令:
brew install pyenv

2.2 配置 pyenv 環(huán)境變量
macOS 使用 zsh 終端,無需區(qū)分終端類型,直接執(zhí)行以下命令,將 pyenv 配置寫入環(huán)境變量文件:
# 寫入環(huán)境變量配置 echo 'export PYENV_ROOT="$HOME/.pyenv"' >> ~/.zshrc echo 'command -v pyenv >/dev/null || export PATH="$PYENV_ROOT/bin:$PATH"' >> ~/.zshrc echo 'eval "$(pyenv init -)"' >> ~/.zshrc

2.3 使配置立即生效
配置寫入后,需重新加載環(huán)境變量,執(zhí)行命令:
source ~/.zshrc
2.4 驗(yàn)證 pyenv 安裝
執(zhí)行以下命令,若輸出版本號(如 pyenv 2.3.34),則表示 pyenv 安裝配置成功:
pyenv -v

三、安裝 Python 編譯依賴(必裝,防編譯失?。?/h2>
執(zhí)行以下命令安裝 Python 編譯依賴,防止 Pyenv 下載 Python 時安裝編譯失?。?/p>
brew install openssl readline sqlite3 xz zlib tcl-tk
Apple Silicon 額外配置(M 系列芯片):
echo 'export LDFLAGS="-L/opt/homebrew/opt/zlib/lib -L/opt/homebrew/opt/openssl/lib"' >> ~/.zshrc echo 'export CPPFLAGS="-I/opt/homebrew/opt/zlib/include -I/opt/homebrew/opt/openssl/include"' >> ~/.zshrc source ~/.zshrc
四、安裝與管理 Python 版本
4.1 查看可安裝版本
pyenv install --list

4.2 安裝指定 Python 版本
執(zhí)行 pyenv 安裝命令安裝常用版本(比如 3.13.3),自動下載 Python 源碼并編譯安裝:
pyenv install 3.13.3

注意:安裝耗時約 2-5 分鐘,取決于網(wǎng)絡(luò)速度和芯片性能,安裝過程中終端會顯示編譯進(jìn)度,耐心等待即可,不要中途中斷命令。
4.3 設(shè)置生效版本
全局默認(rèn)(所有終端生效,推薦)
pyenv global 3.13.3
項目局部(僅當(dāng)前目錄生效)
pyenv local 3.13.3
當(dāng)前終端臨時(僅本次會話生效)
pyenv shell 3.13.3
4.4 刷新版本緩存
pyenv rehash
4.5 驗(yàn)證環(huán)境
# 驗(yàn)證 Python 版本 python --version # 驗(yàn)證 pip 版本 pip --version # 查看已安裝的 Python 版本(* 號表示當(dāng)前生效) pyenv versions
帶 * 的版本為當(dāng)前生效版本

五、常用操作:版本管理與包管理
5.1 pyenv 版本管理常用命令
# 查看所有可安裝的 Python 版本 pyenv install --list # 切換全局版本(示例:切換到 3.11.5) pyenv global 3.11.5 # 切換當(dāng)前終端臨時版本(僅當(dāng)前會話生效) pyenv shell 3.12.0 # 卸載指定 Python 版本(示例:卸載 3.9.18) pyenv uninstall 3.9.18 # 刷新 pyenv 版本緩存(切換版本后若不生效,執(zhí)行此命令) pyenv rehash
5.2 pip 包管理常用命令
pip 是 Python 自帶的包管理工具,安裝完成后需先升級到最新版本,再進(jìn)行包安裝操作。
# 升級 pip 到最新版本 pip install --upgrade pip # 安裝第三方包(示例:安裝 requests 庫) pip install requests # 安裝指定版本的第三方包(示例:安裝 requests 2.31.0) pip install requests==2.31.0 # 卸載第三方包 pip uninstall requests -y # 導(dǎo)出當(dāng)前環(huán)境的包列表(用于項目依賴復(fù)刻) pip freeze > requirements.txt # 從依賴文件批量安裝包 pip install -r requirements.txt
以上就是MacOS使用pyenv和brew優(yōu)雅管理Python多版本環(huán)境的詳細(xì)內(nèi)容,更多關(guān)于MacOS管理Python多版本環(huán)境的資料請關(guān)注腳本之家其它相關(guān)文章!
相關(guān)文章
Python?matplotlib中plt.plot()函數(shù)的顏色參數(shù)設(shè)置及可以直接運(yùn)行的程序代碼
在數(shù)據(jù)可視化中matplotlib.pyplot模塊的plot函數(shù)是一個非常重要且常用的工具,用于繪制2D圖形,這篇文章主要給大家介紹了關(guān)于Python?matplotlib中plt.plot()函數(shù)的顏色參數(shù)設(shè)置及可以直接運(yùn)行的程序代碼,需要的朋友可以參考下2024-03-03
python 隨機(jī)數(shù)生成的代碼的詳細(xì)分析
如果你對python隨機(jī)數(shù)生成的實(shí)際應(yīng)用有不解之處,你就可以通過以下的內(nèi)容對其進(jìn)行了解,以下十九相關(guān)內(nèi)容的介紹2011-05-05
Python對字符串實(shí)現(xiàn)去重操作的方法示例
字符串去重是python中字符串操作常見的一個需求,最近在工作中就又遇到了,所以下面這篇文章主要給大家介紹了關(guān)于Python對字符串實(shí)現(xiàn)去重操作的相關(guān)資料,文中給出了詳細(xì)的介紹,需要的朋友可以參考借鑒,下面來一起看看吧。2017-08-08
python使用requests+excel進(jìn)行接口自動化測試的實(shí)現(xiàn)
在當(dāng)今的互聯(lián)網(wǎng)時代中,接口自動化測試越來越成為軟件測試的重要組成部分,本文就來介紹了python使用requests+excel進(jìn)行接口自動化測試的實(shí)現(xiàn),感興趣的可以了解一下2023-11-11
Python遍歷文件夾和讀寫文件的實(shí)現(xiàn)代碼
這篇文章主要介紹了Python遍歷文件夾和讀寫文件的實(shí)現(xiàn)代碼,需要的朋友可以參考下2016-08-08
Python連接KingbaseES的實(shí)戰(zhàn)指南
在數(shù)據(jù)庫國產(chǎn)化替代的大背景下,人大金倉KingbaseES作為國產(chǎn)數(shù)據(jù)庫的佼佼者,其應(yīng)用生態(tài)日益完善,本文給大家介紹了使用了Python連接KingbaseES的Ksycopg2驅(qū)動,需要的朋友可以參考下2025-10-10
Python 多個圖同時在不同窗口顯示的實(shí)現(xiàn)方法
今天小編就為大家分享一篇Python 多個圖同時在不同窗口顯示的實(shí)現(xiàn)方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2019-07-07
Python辦公自動化之操控遠(yuǎn)程桌面和文件版本控制
這篇文章主要為大家詳細(xì)介紹了Python辦公自動化中操控遠(yuǎn)程桌面和文件版本控制的相關(guān)知識,文中的示例代碼講解詳細(xì),感興趣的小伙伴可以了解下2024-01-01

