我正在开始一个新的 Python 项目,我想与虚拟环境有一个干净的开始。设置完后,我仍然可以导入尚未为新 virtualenv 安装的旧模块 - 为什么?
我创建了一个:
virtualenv ~/virtualenvs/mynewproject --no-site-packages
现在我激活source bin/activate
现在,当我启动 python 解释器时(只需输入python
),我认为它将在我的 virtualenv 中使用 python 解释器,并且我的 pythonpath 将被设置为我的 virutalenv 的 python 的 site-packages 路径(/virtualenvs/mynewporject/lib/python2.7/site-packages),并且没有其他的。
但是,当我查看 sys.path 时,所有旧的系统范围包都可用,并且我可以很好地导入它们 - 这是我不想要的。
我在这里缺少什么?
检查你的PYTHONPATH
环境变量,它可能指向您拥有旧版本包的位置。这个变量总是在你的变量中排在第一位sys.path
因此,请确保清除它或将其更改为指向您激活的 virtualenv。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)