You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Pyenv设置本地Python版本后,python --version显示不一致求助

Pyenv设置本地Python版本后python --version不生效的解决办法

问题场景

使用Pyenv管理Python版本,设置本地项目版本后,python --version仍显示系统默认版本,相关命令输出如下:

全局环境下的命令输出

birolakanesen@Birols-MacBook-Pro ~ % python --version
Python 3.9.6
birolakanesen@Birols-MacBook-Pro ~ % which python
python: aliased to /usr/bin/python3
birolakanesen@Birols-MacBook-Pro ~ % pyenv versions
  system
  3.10.13
* 3.11.7 (set by /Users/birolakanesen/.pyenv/version)
birolakanesen@Birols-MacBook-Pro ~ % which pyenv
/opt/homebrew/bin/pyenv

设置本地版本后的命令输出

birolakanesen@Birols-MacBook-Pro Projects % pyenv local 3.10
birolakanesen@Birols-MacBook-Pro Projects % python --version
Python 3.9.6
birolakanesen@Birols-MacBook-Pro Projects % pyenv versions
  system
* 3.10.13 (set by /Users/birolakanesen/Projects/.python-version)
  3.11.7
birolakanesen@Birols-MacBook-Pro Projects % which python
python: aliased to /usr/bin/python3

解决步骤

1. 移除Python的全局别名

当前python被别名指向系统默认的/usr/bin/python3,会优先于Pyenv的shims生效:

  • 临时取消别名:
    unalias python
    
  • 永久移除别名:打开你的shell配置文件(如~/.zshrc、~/.bashrc),找到包含alias python='/usr/bin/python3'的行并删除,然后执行source ~/.zshrc(对应你的shell配置文件)重新加载。

2. 确保Pyenv正确初始化到Shell

Pyenv需要通过pyenv init将shims目录加入PATH优先级最高的位置,检查shell配置文件中是否包含以下内容:

export PYENV_ROOT="$HOME/.pyenv"
command -v pyenv >/dev/null || export PATH="$PYENV_ROOT/bin:$PATH"
eval "$(pyenv init -)"

如果没有,将上述内容添加到配置文件末尾,然后执行source ~/.zshrc(或对应配置文件)重新加载。

3. 验证配置生效

  • 执行echo $PATH,确认$HOME/.pyenv/shims出现在PATH的最前端
  • 执行which python,应输出/Users/birolakanesen/.pyenv/shims/python
  • 最后执行python --version,即可显示设置的本地Python版本3.10.13

内容的提问来源于stack exchange,提问作者Birol Akan Esen

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.03 01:39:59