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

virtualenv已移除--no-site-packages参数?如何实现相同隔离效果?

关于--no-site-packages参数的状态说明

--no-site-packages参数早在2016年发布的virtualenv 15.0.0版本就已正式移除,该参数对应的「禁止虚拟环境访问全局site-packages目录」的逻辑,已经成为virtualenv创建环境时的默认配置,不需要额外指定。如果需要开启全局包访问,可使用保留的--system-site-packages参数。

激活虚拟环境后仍能访问全局pip-check的原因及解决方法

你遇到的可执行命令可以调用到全局版本的情况,不属于虚拟环境隔离失效,原因和对应解决方法如下:

  • 可执行命令的调用优先级由系统PATH变量决定,全局安装的pip-check会写入系统级别的PATH路径,若虚拟环境的可执行目录优先级低于系统路径,就会调用到全局版本。激活虚拟环境后执行which pip-check即可查看当前调用的pip-check实际路径,确认是否属于全局安装版本。
  • 要解决这个问题,直接在激活后的虚拟环境中执行pip install pip-check,虚拟环境内安装的可执行文件优先级会高于系统全局版本,后续调用就会优先使用虚拟环境内的版本。

手动调整虚拟环境全局包访问权限的方法

如果你需要手动确认或修改虚拟环境的隔离配置,直接打开虚拟环境根目录下的pyvenv.cfg文件,调整include-system-site-packages配置项即可:

  • 设为false:等价于原--no-site-packages效果,禁止访问全局site-packages
  • 设为true:等价于--system-site-packages效果,允许访问全局site-packages

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.25 12:36:02