如何在M1 Mac设备上轻松降级Python版本
M1 芯片Mac Python 3.9降级到3.8操作指南
第一步:先排查现有Python的安装来源
打开终端执行以下命令,确认当前Python 3.9.6的安装方式:
- 执行
which python3,根据输出路径判断:- 路径包含
/opt/homebrew/:通过Homebrew安装 - 路径包含
/Library/Frameworks/Python.framework/:通过Python官网pkg包安装 - 路径包含
/Users/你的用户名/.pyenv/:通过pyenv安装
- 路径包含
- 执行
brew -v,如果能正常输出版本号,说明Homebrew可用,优先用Homebrew做版本管理
第二步:按对应安装源执行降级操作
情况1:Python为Homebrew安装
- 执行
brew install python@3.8安装Python 3.8版本 - 配置终端默认调用3.8版本(M1 Mac默认shell为zsh):
echo 'export PATH="/opt/homebrew/opt/python@3.8/bin:$PATH"' >> ~/.zshrc - 刷新配置生效:
source ~/.zshrc - 验证版本:执行
python3 -V确认输出为3.8.x版本即可,对应pip会自动绑定,执行pip3 -V可验证绑定状态
情况2:Python为官网pkg安装
- 先卸载现有Python 3.9:
- 执行
sudo rm -rf /Library/Frameworks/Python.framework/Versions/3.9 - 执行
sudo rm -rf "/Applications/Python 3.9" - 执行
ls /usr/local/bin | grep '../Library/Frameworks/Python.framework/Versions/3.9' | xargs sudo rm
- 执行
- 前往Python官网下载3.8版本的pkg安装包,按引导手动安装即可,安装完成后默认调用的就是3.8版本
情况3:Python为pyenv安装
- 执行
pyenv install 3.8.10安装3.8系列稳定版本 - 执行
pyenv global 3.8.10设置全局默认Python版本 - 执行
python3 -V确认版本切换成功即可
备用方案:无冲突多版本管理(推荐)
如果你完全分不清之前的安装来源,不想改动现有Python 3.9的环境,可直接用pyenv做多版本隔离,不同项目可以用不同Python版本,互不影响:
- 执行
brew install pyenv安装pyenv - 依次执行以下命令添加环境变量:
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 - 刷新配置生效:
source ~/.zshrc - 安装Python 3.8:
pyenv install 3.8.10 - 进入需要用Python 3.8的项目目录,执行
pyenv local 3.8.10,该目录下调用的python、pip都会自动切换为3.8版本,其他目录仍保留原有3.9版本
后续验证
降级完成后执行pip3 install 所需依赖包名,确认可以正常安装适配Python 3.8的版本即可,如果之前安装过全局依赖,降级后需要重新安装对应适配3.8的版本。
内容的提问来源于stack exchange,提问作者Marc
相关产品推荐
相关产品推荐

