我正在使用virtualenv
版本1.7.1.2和python
2.7.3来创建虚拟python环境。但是当我创建这样的环境并激活它时,我可以看到安装了以下软件包(使用pip freeze
):
argparse==1.2.1
distribute==0.6.24
wsgiref==0.1.2
为什么?这是什么意思?
答案 0 :(得分:13)
这些是标准软件包,并且将始终遵循该版本的Python和Virtualenv。
distribute
非常自我解释。 It's necessary for pip
。分发还包含setuptools,但在包内,因此pip freeze
无法识别。有关实际的内容的详细信息,请查看env/lib/python2.7/site-packages/distribute-0.6.31-py2.7.egg
。
wsgiref
实际上是标准库的一部分,但未被识别。它上面有一个bug report,它已在Python 3.3+中修复。请在Why does pip freeze report some packages in a fresh virtualenv created with --no-site-packages?
我无法找出为什么argparse
存在,但我的猜测是因为它是依赖或类似wsgiref
的东西。 Finding package dependencies in Python可能有点hacky /痛苦,特别是如果它已经安装在你的virtualenv中。