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

虚拟环境pip指向旧版本,Python环境版本不一致问题咨询

解决Pipenv虚拟环境使用旧Python版本的问题

我之前也碰到过一模一样的情况,这大概率是因为Pipenv默认绑定了你先安装的Python 3.5,而没有自动识别后来通过Homebrew安装的Python 3.6。咱们一步步来搞定这个问题:

第一步:确认系统中的Python路径

先搞清楚两个Python版本的具体位置,在终端执行以下命令:

which python3.5
which python3.6

Homebrew安装的Python一般会在/usr/local/bin目录下,记好3.6的路径,后面会用到。

第二步:方案1 - 直接指定Python版本创建虚拟环境

如果已经存在那个用了3.5的旧虚拟环境,先删掉它:

pipenv --rm

然后用以下命令强制指定Python 3.6来创建并进入虚拟环境:

pipenv --python 3.6 shell

进入环境后,执行python --version和pip --version,应该就能看到版本是3.6了。

第三步:方案2 - 设置默认Python版本(一劳永逸)

如果不想每次创建虚拟环境都手动指定版本,可以设置环境变量让Pipenv默认用3.6:

  1. 打开你的shell配置文件,比如用bash的话是~/.bash_profile,用zsh的话是~/.zshrc,在文件末尾添加一行:
export PIPENV_PYTHON=/usr/local/bin/python3.6

(这里的路径要替换成你刚才查到的python3.6实际路径)
2. 让配置生效,执行:

source ~/.bash_profile  # 如果你用的是bash
# 或者
source ~/.zshrc  # 如果你用的是zsh

之后再执行pipenv shell,虚拟环境就会默认使用Python 3.6了。

为什么会出现这个问题?

Pipenv在查找Python版本时,会优先选择系统中最早安装的那个同大版本(比如Python3)的解释器。你先装了3.5,它就把这个设为默认的Python3候选,后来装的3.6虽然存在,但Pipenv不会自动切换,所以需要我们手动指定或者通过环境变量来调整。

内容的提问来源于stack exchange,提问作者Frank Harland

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.26 10:44:10