在 macOS 12.5 上用 pyenv 管理 Python 版本,可以随时安装和切换多个版本,不会影响系统自带的 Python。
1. 安装 pyenv
pyenv 是 Python 版本管理工具,先用 Homebrew 安装:
brew update
brew install pyenv
从源码编译 Python 需要一些开发库,如果后续安装版本时报错,可以先补齐依赖:
brew install openssl readline sqlite3 xz zlib tcl-tk
2. 配置环境变量
把 pyenv 的 shims 目录加入 PATH。macOS 12.5 默认使用 zsh,所以写入
~/.zshrc;如果使用 bash,则改写~/.bash_profile(也可以是~/.bashrc或~/.profile)。
echo 'export PATH="$(pyenv root)/shims:$PATH"' >> ~/.zshrc
echo 'eval "$(pyenv init -)"' >> ~/.zshrc
eval "$(pyenv init -)"是 pyenv 官方推荐的写法,能确保python优先解析到 shims 而不是系统自带版本;如果只需要基本切换,只保留上一行也可以。
然后执行下面命令让配置生效:
source ~/.zshrc
3. 安装 Python 3.8.20
pyenv install 3.8.20
首次安装需要现场编译,耗时较长(几分钟到十几分钟)。可先用
pyenv install --list确认版本号存在。
4. 设置默认版本
pyenv global 3.8.20
5. 验证是否成功
python -V
# Python 3.8.20
辅助确认:
pyenv versions # * 号标记当前生效的版本
which python # 应指向 ~/.pyenv/shims/python
补充
pyenv local 3.8.20:只在当前目录生效,会在目录下生成.python-version文件,优先级高于global,适合单个项目锁定版本。- 如果
python -V仍显示其他版本,先执行pyenv rehash,再确认 PATH 中 shims 目录是否排在系统路径前面。- Python 3.8 系列已于 2024-09 停止官方维护,3.8.20 是该系列最后一个版本,建议仅用于维护存量项目。
评论区