python教程—为什么pip freeze报告使用——no-site-packages创建的新virtualenv中的一些包?-Python实用宝典

python教程—为什么pip freeze报告使用——no-site-packages创建的新virtualenv中的一些包?

当我创建一个新的virtualenv时,pip freeze显示我已经安装了几个包,即使我没有在环境中安装任何东西。我希望在第一次将pip安装到环境中之前,pip冻结将返回空输出。wsgiref是标准库的一部分,不是吗?

当我创建一个新的virtualenv时,pip freeze显示我已经安装了几个包,即使我没有在环境中安装任何东西。我希望在第一次将pip安装到环境中之前,pip冻结将返回空输出。wsgiref是标准的一部分,不是吗?

    day@garage:~$ mkdir testing day@garage:~$ cd testing day@garage:~/testing$ virtualenv --no-site-packages . New python executable in ./bin/python Installing distribute.......................................................... ............................................................................... .........................................done. day@garage:~/testing$ . bin/activate (testing)day@garage:~/testing$ pip freeze distribute==0.6.10 wsgiref==0.1.2

一些额外的信息:

    (testing)day@garage:~/testing$ pip --version pip 0.7.2 from /home/day/testing/lib/python2.7/site-packages/pip-0.7.2-py2.7.eg g (python 2.7) (testing)day@garage:~/testing$ deactivate day@garage:~/testing$ virtualenv --version 1.4.9 day@garage:~/testing$ which virtualenv /usr/bin/virtualenv day@garage:~/testing$ dpkg -S /usr/bin/virtualenv python-virtualenv: /usr/bin/virtualenv day@garage:~/testing$ cat /etc/lsb-release DISTRIB_ID=Ubuntu DISTRIB_RELEASE=11.04 DISTRIB_CODENAME=natty DISTRIB_DESCRIPTION="Ubuntu 11.04"

回答

每次使用——no-site-packages创建virtualenv时,它都会安装setuptools或distribution。出现wsgiref的原因是python 2.5+标准向wsgiref提供了egg信息(pip不知道它是stdlib还是第三方包)。

似乎是在Python3.3+: http://bugs.python.org/issue12218上解决的

​Python实用宝典 (pythondict.com)
不只是一个宝典
欢迎关注公众号:Python实用宝典

本文由 Python实用宝典 作者:Python实用宝典 发表,其版权均为 Python实用宝典 所有,文章内容系作者个人观点,不代表 Python实用宝典 对观点赞同或支持。如需转载,请注明文章来源。
1

发表评论