为何执行pip install --upgrade pipenv无法升级pipenv?
Mac上pipenv无法更新的原因及解决办法
常见原因
- 多Python环境冲突:Mac自带Python,你用的
pip可能对应系统默认Python,而升级的pipenv和实际运行的不是同一个环境里的版本。 - PATH路径优先级问题:旧版本pipenv所在的目录在系统PATH里优先级更高,导致你运行
pipenv --version时调用的还是旧版本,哪怕新的已经装好了。 - 权限或安装路径问题:直接用
pip install可能把新版本装到用户目录,但系统默认调用全局目录里的旧版本。
解决步骤
先排查路径对应关系
运行以下命令,确认当前使用的pip和pipenv路径是否一致:which pip which pipenv pip show pipenv看
pip show pipenv输出的Location字段,对比which pipenv的结果,如果不一样,说明路径不匹配。用对应Python的pip升级
- 如果是brew安装的Python,用
pip3(brew的Python通常默认用pip3):pip3 install --upgrade pipenv - 如果是用户本地的Python环境,加上
--user参数确保装到用户目录:python -m pip install --upgrade --user pipenv
- 如果是brew安装的Python,用
调整PATH优先级
找到新版本pipenv的安装路径(比如pip show pipenv里的Location去掉最后面的/pipenv),把它加到系统PATH最前面。- 编辑
~/.zshrc或~/.bashrc(取决于你用的shell):open ~/.zshrc - 添加一行(替换成你的实际路径):
export PATH="/Users/你的用户名/Library/Python/3.9/bin:$PATH" - 保存后生效:
source ~/.zshrc
- 编辑
强制重装
先卸载旧版本,再重新安装:pip uninstall -y pipenv pip install --upgrade pipenv权限不够就加
--user参数。用brew管理(推荐)
如果平时用brew管理包,直接用brew安装和更新更省心:pip uninstall -y pipenv brew install pipenv # 后续更新直接用 brew upgrade pipenv
内容的提问来源于stack exchange,提问作者Vince M
相关产品推荐
相关产品推荐

