Mac安装Python3.11后仍运行旧版本3.6的解决求助
解决Mac Big Sur下默认Python版本切换至3.11的问题
一、确认当前终端使用的Shell
先执行以下命令确认终端默认Shell:
echo $SHELL
- 若输出为
/bin/zsh,后续配置需修改zsh的配置文件(.zshrc或.zprofile) - 若输出为
/bin/bash,则修改.bash_profile
二、修正PATH环境变量(优先指定Python3.11路径)
方案1:使用官方发布的Python3.11
将官方Python3.11的bin目录放到PATH最前端,确保系统优先识别它。在对应Shell配置文件中添加:
# 官方Python3.11路径 PATH="/Library/Frameworks/Python.framework/Versions/3.11/bin:${PATH}" export PATH
方案2:使用Homebrew安装的Python3.11
Homebrew安装的Python3.11路径因芯片不同有差异:
- Intel芯片Mac:
/usr/local/bin - Apple Silicon芯片Mac:
/opt/homebrew/bin
在配置文件中添加对应路径:
# Homebrew Python3.11路径(根据芯片选择) # Intel芯片 # PATH="/usr/local/bin:${PATH}" # Apple Silicon芯片 PATH="/opt/homebrew/bin:${PATH}" export PATH
注意:不要同时保留两个版本的PATH配置,二选一即可,避免版本冲突。
三、设置别名快速调用(可选但更便捷)
在Shell配置文件中添加别名,让python/python3直接指向Python3.11,同时关联对应pip:
alias python="python3.11" alias python3="python3.11" alias pip="pip3.11" alias pip3="pip3.11"
四、修复python3 -m venv创建虚拟环境的错误
针对你遇到的ensurepip非零退出错误,可尝试以下方法:
方法1:跳过pip初始化,手动安装
创建虚拟环境时暂不初始化pip,之后手动安装:
python3.11 -m venv --without-pip env # 激活虚拟环境 source env/bin/activate # 手动安装pip curl https://bootstrap.pypa.io/get-pip.py | python
方法2:重新安装Python3.11的ensurepip模块
python3.11 -m ensurepip --upgrade
执行完成后再次尝试创建虚拟环境:
python3.11 -m venv env
方法3:使用Homebrew的Python创建虚拟环境
若你用Homebrew安装了Python3.11,直接调用对应路径的python3创建:
# Intel芯片 /usr/local/bin/python3 -m venv env # Apple Silicon芯片 /opt/homebrew/bin/python3 -m venv env
五、验证配置生效
- 保存配置文件后,重启终端,或执行以下命令让配置立即生效:
# zsh用户 source ~/.zshrc # bash用户 source ~/.bash_profile - 验证Python版本:
预期输出均为python -V python3 -V python3.11 -VPython 3.11.0。 - 再次尝试创建虚拟环境,确认无错误。
额外清理:修正错误的PYTHONPATH配置
你之前在.zprofile中设置的export PYTHONPATH=$HOME/Users/User存在路径错误($HOME已对应/Users/User,重复拼接会生成无效路径),可修改为实际需要的项目路径,或直接删除该行:
# 示例:设置为你的项目目录 export PYTHONPATH="/Users/User/your-project-dir"
内容的提问来源于stack exchange,提问作者WhooNo
相关产品推荐
相关产品推荐

