Python官方宣布 2020 年 1 月后不再更新维护 Python2,homebrew 官方也不推荐安装 python2 了。但是,历史遗留问题没法解决,需要用到依赖 python2 的包的时候,还是需要安装 python2。目前 macos 可以通过 pyenv 安装 python2。
// 先更新 homebrew brew update // 然后安装 pyenv brew install pyenv
如果 homebrew 使用的非官方源,那么在安装 pyenv 的时候可能报错:
tar: Error opening archive: Failed to open '/Users/zhouxitao/Library/Caches/Homebrew/downloads/ad46a5a60b2948a91c235d8e24bb732d859473901d6b368f1810770ddd7048cb--readline-8.1.arm64_big_sur.bottle.tar.gz'
如果报错了,切换为官方源再安装。
unset HOMEBREW_BOTTLE_DOMAIN brew install pyenv
然后安装 python2
arch -x86_64 pyenv install 2.7.18
前面的 arch -x86_64 不要丢,否则会报错。
另外,下载比较慢,可能需要翻墙。
接着,设置环境变量
// ~/.zshrc 文件添加如下一行 export PATH="$(pyenv root)/shims:${PATH}" // 生效配置 source ~/.zshrc
这时,还无法在命令行使用 python,需要设置安装的 python 版本为全局 python
pyenv global 2.7.18 python --version
问题来了,如果某个项目需要 python3 怎么办?假设 python3 已经通过 pyenv 安装好了,这时可以设置当前 shell 的 python 指向。
pyenv shell 3.6.5