【发布时间】:2020-08-08 13:18:45
【问题描述】:
我遇到了一个问题,由于某种原因,我正在创建的虚拟环境正在访问我的系统范围的 Python 和 pip 安装,但它们不应该访问。
这是我相当简单的工作流程,只要确保我没有遗漏任何明显的东西(Windows 10、Python 3.8.2):
python -m venv venv
venv\Scripts\activate.bat
正如您所料,我的路径现在以 (venv) 为前缀。不过,
pip list
列出我拥有的所有系统范围的 pip 包,而不仅仅是应该在该 venv 中的那些。
pyvenv.cfg 表示
include-system-site-packages = false
当我使用
打开解释器时python
在虚拟环境中,
sys.executable
返回我的 C 盘上的路径和
print(pip.__file__)
也一样。我怀疑他们应该指向虚拟环境中的解释器和 pip,但不知道如何实现。
编辑:4/27/20,仍在处理这个问题,我已经尝试过:
从 python.org 和 MS Store 卸载和重新安装 Python
在新位置安装 python
清除我的用户和系统环境变量,然后添加 仅适用于 Python 3.8。
我真的很茫然,不胜感激。
【问题讨论】:
-
这个链接可能对你有用:stackoverflow.com/questions/41573587/…
-
谢谢 - 你有什么特别的想法吗?我了解 venv / 虚拟环境通常试图完成什么,我的问题是虚拟环境本身的预期功能没有实现,我没有看到在那个问题中解决(即激活虚拟environment 没有将我的 python/pip 指向这些程序的虚拟环境特定安装,但继续指向我的全局安装)但是我可能错过了一些东西。
-
我在 virtualenv 上从来没有遇到过这样的问题...还有一个问题:你使用哪个 Python 分发包?
-
virtualenv 对我来说遇到了同样的问题。我认为这个问题更普遍地与我的计算机上设置的路径有关,而不是使用给定的包,因为在另一台计算机上按照相同的工作流程正常工作。我在 Windows 10 上使用 Python 3.8.2。
-
再一次,你的 Python 的来源是什么?蟒蛇.org?微软视觉工作室?蟒蛇?微软商店?
标签: python windows virtualenv python-venv