如何彻底卸载MacOS中的Python 2.7?已装Python3但默认仍为2.7
解决Mac上Python默认版本指向问题
嘿,我来帮你搞定这个Python版本默认的问题!你之前执行的命令没效果,核心原因是:你删除的是第三方安装的Python 2.7,而Mac系统自带的Python 2.7根本不在那个路径里。系统自带的Python 2.7存放在/System/Library/Frameworks/Python.framework/Versions/2.7,这是系统核心依赖组件,绝对不能删除,否则会导致很多系统工具无法正常运行。
下面给你几个安全有效的解决方法,按需求选择:
方法一:用Shell别名快速切换(最简单)
这个方法不需要修改系统文件,只需要给python命令设置一个别名指向python3:
- 打开你的Shell配置文件:
- 如果你用的是Mac默认的Zsh,编辑
~/.zshrc:open -e ~/.zshrc - 如果你用的是Bash,编辑
~/.bash_profile或者~/.bashrc:open -e ~/.bash_profile
- 如果你用的是Mac默认的Zsh,编辑
- 在文件末尾添加一行:
alias python="python3" - 保存文件后,让配置立即生效:
- Zsh用户执行:
source ~/.zshrc - Bash用户执行:
source ~/.bash_profile
- Zsh用户执行:
- 验证效果:
现在应该显示你安装的Python 3.6.5版本了。python --version
方法二:创建软链接(更持久,适合多用户场景)
如果希望所有用户都能默认用Python3,可以给brew安装的Python3创建软链接到/usr/local/bin(这个目录在系统PATH里优先级高于系统自带的路径):
- 先确认brew安装的Python3路径:
通常会输出which python3/usr/local/bin/python3(Intel Mac)或者/opt/homebrew/bin/python3(M1/M2 Mac)。 - 创建软链接:
输入你的系统密码确认即可。sudo ln -s $(which python3) /usr/local/bin/python - 验证效果:重启终端后执行
python --version,就能看到Python3的版本了。
方法三:用pyenv管理多版本(推荐长期使用)
如果以后需要切换不同的Python版本,推荐用pyenv这个工具,它能帮你轻松管理多个Python版本,不会影响系统自带的Python:
- 用brew安装pyenv:
brew install pyenv - 配置Shell环境(以Zsh为例):
编辑~/.zshrc,添加以下内容:export PYENV_ROOT="$HOME/.pyenv" command -v pyenv >/dev/null || export PATH="$PYENV_ROOT/bin:$PATH" eval "$(pyenv init -)" - 生效配置:
source ~/.zshrc - 设置全局默认Python版本为3.6.5:
pyenv global 3.6.5 - 验证:重启终端后执行
python --version,就会默认使用3.6.5了。
最后提醒一句:永远不要删除系统自带的Python 2.7,很多Mac系统工具(比如softwareupdate、部分脚本)都依赖它,删除会导致系统异常。
内容的提问来源于stack exchange,提问作者Tryliom




