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

pyenv创建虚拟环境后pip freeze显示已安装包及版本异常问题

排查线索

1. 检查pyenv的shell初始化配置

确认shell配置文件(如~/.bashrc、~/.zshrc或~/.profile)中是否包含完整的pyenv初始化代码:

export PATH="$HOME/.pyenv/bin:$PATH"
eval "$(pyenv init -)"
eval "$(pyenv virtualenv-init -)"

若之前配置正常,可能是配置文件被修改,或终端未重新加载配置——可尝试新开终端,或执行source ~/.bashrc(对应你的shell配置文件)刷新。

2. 验证PATH环境变量优先级

激活虚拟环境后执行echo $PATH,查看输出中/home/miguel/.pyenv/versions/my-venv/bin是否处于最前端。如果/home/miguel/anaconda3/bin排在它前面,会导致系统优先调用anaconda的Python,而非虚拟环境版本。

  • 若存在此问题,检查是否有其他脚本(比如anaconda的初始化脚本)在pyenv之后修改了PATH,将anaconda路径前置。

3. 检查当前生效的pyenv版本

激活虚拟环境后执行pyenv version,确认输出是否为my-venv (set by PYENV_VERSION environment variable)。若显示其他版本,说明虚拟环境激活未真正生效。

  • 同时可执行pyenv global和pyenv local,排查是否有全局/本地版本设置干扰虚拟环境优先级。

4. 检查pip的实际指向

激活虚拟环境后执行which pip,确认输出是否为/home/miguel/.pyenv/versions/my-venv/bin/pip。若指向anaconda的pip,pip freeze自然会显示anaconda的已安装包列表。

5. 重新创建虚拟环境测试

尝试删除并重建虚拟环境,排除环境创建异常:

pyenv uninstall my-venv
pyenv virtualenv 3.11.2 my-venv
pyenv activate my-venv

重建后再次检查python --version和pip freeze结果。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.22 09:02:41