我在OSX上遇到Python virtualenv问题。在创建了virtualenv并执行了pip freeze
后,它说它已经安装了很多东西,这实际上是我在主要的pip安装上安装的东西(在virtualenv之外):
kramer65$ virtualenv venv
New python executable in venv/bin/python
Installing setuptools, pip, wheel...done.
kramer65$ source venv/bin/activate
(venv)kramer65$ which pip
/Users/kramer65/repos/venv/bin/pip
(venv)kramer65$ pip freeze
apns==2.0.1
APScheduler==3.0.4
argh==0.26.1
Babel==1.3
beautifulsoup4==4.4.1
etc.
etc.
我有virtualenv版本13.1.2,我认为这是最新版本。
所以为了确保我尝试使用直接链接调用pip,但结果相同:
(venv)kramer65$ ./venv/bin/pip freeze
apns==2.0.1
APScheduler==3.0.4
etc.
etc.
甚至通过使用virtualenv python调用pip:
(venv)kramer65$ ./venv/bin/python venv/bin/pip freeze
apns==2.0.1
APScheduler==3.0.4
etc.
etc.
我也卸载并重新安装了virtualenv,但结果相同。有谁知道为什么我似乎无法调用已安装的virtualenv的Python?欢迎所有提示!
[编辑]
根据@sushant的建议,我尝试使用--no-site-packages
:
kramer65$ virtualenv --no-site-packages venv
New python executable in venv/bin/python
Installing setuptools, pip, wheel...done.
kramer65$ source venv/bin/activate
(venv)kramer65$ pip freeze
apns==2.0.1
APScheduler==3.0.4
argh==0.26.1
Babel==1.3
beautifulsoup4==4.4.1
etc.
etc.
(venv)kramer65$ which pip
/Users/kramer65/repos/venv/bin/pip
答案 0 :(得分:0)
问题是您的virtualenv
安装也包含主site-packages
。
virtualenv
将不会包含site-packages
:
virtualenv --no-site-packages venv