我有 64 位 Python 2.7.5 安装在C:\Python27
.
我的环境变量如下:
Path: %PYTHONHOME%\Scripts;
PYTHONHOME: C:\Python27;
PYTHONPATH: C:\Python27\Lib;C:\Python27\Lib\lib-tk;C:\Python27\DLLs;
我创建了一个名为“foo”的 virtualenv,但注意到pip freeze
激活 foo 后显示了我全局安装中的所有包。
在玩了之后,似乎删除PYTHONHOME
变量可以解决这个问题;pip freeze
然后只看到安装在我的 virtualenv 中的软件包。
但是,我目前必须PYTHONHOME
手动删除。virtualenv 的Scripts\activate
脚本中有一个应该清除它的简介,但似乎没有($env:PYTHONHOME
在激活之前和之后愉快地显示相同PYTHONHOME
):
# unset PYTHONHOME if set
# this will fail if PYTHONHOME is set to the empty string (which is bad anyway)
# could use `if (set -u; : $PYTHONHOME) ;` in bash
if [ -n "$PYTHONHOME" ] ; then
_OLD_VIRTUAL_PYTHONHOME="$PYTHONHOME"
unset PYTHONHOME
fi
如何PYTHONPATH
自动清除?在windows下是否需要修改activate脚本?
谢谢!