脚本中的 virtualenv 目录

virtualenv directory from script

这曾经有效,但现在两者给出相同的结果:

$ python -c 'from pip import __file__ as pip_loc; print pip_loc,'
/usr/local/lib/python2.7/dist-packages/pip/__init__.pyc
$ /tmp/.venv/bin/python -c 'from pip import __file__ as pip_loc; print pip_loc,'
/usr/local/lib/python2.7/dist-packages/pip/__init__.pyc

如何获取 /tmp/.venv 路径?

在导入 pip 之前激活 virtualenv。

感谢 IRC 上的 nedbat:

$ python -c 'from sys import executable; print executable,'
/usr/bin/python
$ /tmp/.venv/bin/python -c 'from sys import executable; print executable,'
/tmp/.venv/bin/python

编辑:实际上我真正想要的是 get_python_lib of:

from distutils.sysconfig import get_python_lib