在我的电脑的E:\apps\python2.7\Lib\site-packages下。
有着41个对象(文件或者文件夹)。
1)
其中linester-1.0.0-py2.7.egg-info文件 是安装mynester跟yournester的信息总结,
他们使用了python setup.py install 的安装方式。(学会使用Distutils发布包,见文章)
但是在linester-1.0.0-py2.7.egg-info文件 中却找不到任何关于mynester跟yournester的信息。
这是python在Distutils本身设计的缺陷。。
2)
Python标准库中提供的Distutils打包工具充斥了上述的种种问题,但由于它是一种标准,所以人们要么继续忍受并使用它,
或者转向更先进的工具Setuptools,它在Distutils之上提供了一些高级特性。
另外还有Distribute,它是Setuptools的衍生版本。Pip则是一种更为高级的安装工具,它依赖于Setuptools。
其中,easy_install是setuptools和distribute自带的安装脚本,
也就是一旦 setuptools 或 distribute安装完毕, easy_install 也便可用。。
现在setuptools已经停止维护了,基本上setuptools就是个名字,核心是distribute。
3)不过不论是setuptools\distribute还是基于setuptools的pip。这些都不是python官方想包容的标准。setuptools 和 distribute 的诞生是因为 distutils 的不济, 进而导致目前分化的状况.而 Guido 并未接纳 distribute 为官方标准, 并说明了原因. 开发者在失落之余明确了新的方向和任务 – distutils2, 它将成为 Python 3.3 的标准库 packaging , 并在其它版本中以 distutils2 的身份出现; 换句话说, 它和 pip 将联手结束目前混乱的状况;
4)
上述提到的41个对象,包括3个用distutils1安装的nester文件都能被pip freeze命令显示。
C:\Users\Administrator>pip freeze -l
Django==1.4.3
MySQL-python==1.2.4b4
argparse==1.2.1
colorama==0.2.4
cx-Freeze==4.3
linester==1.0.0 (包含了mynester和yournester)
requests==0.14.1
virtualenv==1.9.1
但有两种包不能显示出来,
一个是setuptools,跟pip。。 因为他们本身就是pip一部分、、安装pip之前一定安装setuotools,因为pip基于setuptools
另一个就是使用pth指向的wxpython包。见wx.pth文件
总结来说,现在2013年,就用pip, 摒弃setuptools和Distribute,坐等distutils2。
-- 关于python包管理. By chinesejie@qq.com