dist-packages和site-packages有什么区别?

python软件包的安装过程让我感到有些恼火。 具体来说,dist-packages目录和site-packages目录中安装的软件包有什么不同?

dist-packages是一个特定于Debian的约定,也存在于Ubuntu的衍生产品中。 当他们从Debian软件包pipe理器进入这个位置时,模块被安装到dist-packages:

/usr/lib/python2.7/dist-packages 

由于easy_installpip是从包pipe理器安装的,他们也使用dist-packages,但是他们把包放在这里:

 /usr/local/lib/python2.7/dist-packages 

从Debian Python Wiki :

dist-packages而不是site-packages。 从Debian软件包安装的第三方Python软件进入dist-packages,而不是site-packages。 这是为了减less系统Python和您可能手动安装的任何源代码的Python版本之间的冲突。

这意味着如果你从源手动安装Python,它使用site-packages目录。 这样可以使两个安装分开,尤其是在Debian和Ubuntu依赖于许多系统实用程序的系统版本的Python之后。