在安装完虚拟环境的包之后,在虚拟环境中还是能用pip freeze 查看到环境外的包,是因为安装的问题吗?有没有什么解决方法?使用的3.10.8
Linux 或 MacOS
$VIRTUAL_ENV/pip.conf
Windows
%VIRTUAL_ENV%\pip.ini
经分析可能是因为虚拟环境中未正确隔离Python库导致的。可以尝试以下步骤解决问题:
确认使用的Python版本是否正确,并使用pip命令安装virtualenv模块(具体请参考参考资料段落4)。同时确认Python的环境变量配置是否正确,例如是否指向了虚拟环境中的Python版本。
利用virtualenv创建一个新的虚拟环境。
激活此虚拟环境,并使用pip命令安装需要的Python包,例如:
source <虚拟环境路径>/bin/activate
pip install <包名>
如果仍然出现问题,可能是由于虚拟环境中未正确隔离Python库导致的。此时可以使用批处理命令,快速替换指定操作目录env_nmf/bin下所有文件中旧路径为新路径(具体请参考参考资料段落5)。
最后再次确认是否正确激活了虚拟环境,并使用pip freeze命令查看当前虚拟环境中安装的包,例如:
pip freeze
详细步骤如下:
# 确认使用的Python版本是否正确,并使用pip命令安装virtualenv模块
pip install virtualenv
# 利用virtualenv创建一个新的虚拟环境
virtualenv <虚拟环境路径>
# 激活此虚拟环境,并使用pip命令安装需要的Python包
source <虚拟环境路径>/bin/activate
pip install <包名>
# 如果仍然出现问题,使用批处理命令,快速替换指定操作目录env_nmf/bin下所有文件中旧路径为新路径
sed -i "s/原始字符串/新的字符串/g" `grep 原始字符串 -rl 指定操作目录`
# 最后再次确认是否正确激活了虚拟环境,并使用pip freeze命令查看当前虚拟环境中安装的包
pip freeze