将Python3迁移至Brew并升级:El Capitan系统下的操作咨询
解决OS X El Capitan下Python版本管理问题
嘿,我来帮你一步步搞定这些Python版本的问题~
一、卸载python.org安装的Python 3.5.0
从python.org安装的Python会分散在几个位置,你可以按以下步骤彻底卸载:
- 首先删除应用程序里的Python文件夹:
sudo rm -rf "/Applications/Python 3.5" - 移除系统框架里的Python文件:
sudo rm -rf /Library/Frameworks/Python.framework/Versions/3.5 - 删除对应的符号链接(如果这些链接指向3.5版本):
sudo rm /usr/local/bin/python3.5 sudo rm /usr/local/bin/pip3.5 sudo rm /usr/local/bin/python3 sudo rm /usr/local/bin/pip3 - 最后检查你的
~/.bash_profile或~/.zshrc(如果你用zsh),把里面添加的Python 3.5相关的PATH配置删掉,保存后执行source ~/.bash_profile让修改生效。
二、用Homebrew安装Python 3.6
你提到当前Homebrew默认只支持3.5.1,这是因为当时官方配方还没更新到3.6版本,不过可以通过以下方式安装3.6:
- 先把Homebrew更新到最新状态:
brew update - 尝试直接安装Python 3.6的指定版本包:
如果这个命令无效(比如当时Homebrew还没把3.6作为单独的版本包),可以试试安装历史配方版本:brew install python@3.6- 找到支持Python 3.6的
python.rb配方内容(可在Homebrew仓库的历史提交中获取),保存到本地文件python36.rb - 执行本地安装命令:
brew install ./python36.rb
- 找到支持Python 3.6的
- 安装完成后,验证版本:
最后把Homebrew安装的Python路径加到shell配置里,确保它优先级最高:python3.6 --version pip3.6 --versionecho 'export PATH="/usr/local/opt/python@3.6/libexec/bin:$PATH"' >> ~/.bash_profile source ~/.bash_profile
三、是否保留多版本Python更合适?
其实多版本共存是Python开发中非常常见且推荐的做法,完全不用非得卸载旧版本。比如用pyenv工具就能轻松管理多个Python版本,切换起来灵活又安全:
- 安装pyenv:
brew install pyenv - 把pyenv的初始化代码加到shell配置文件:
echo 'eval "$(pyenv init -)"' >> ~/.bash_profile source ~/.bash_profile - 安装Python 3.6:
pyenv install 3.6.0 - 设置全局默认版本为3.6.0:
这种方式既不会影响系统自带的Python,也不用担心卸载旧版本可能破坏其他依赖,后续需要切换版本只需要执行pyenv global 3.6.0pyenv global <版本号>就行。
另外补充一句:升级到3.6确实能解决tlsv1 alert protocol version错误,因为3.6开始默认支持更安全的TLS协议版本,而3.5.0默认没有启用这些配置。
内容的提问来源于stack exchange,提问作者mishap_n
相关产品推荐
相关产品推荐

