Was ist der Unterschied zwischen den Verzeichnissen "Extras" und "Site-Packages" von Python?

Ich bin verwirrt darüber, wie Python unter OS X die Pakete unter "Extras" und "Site-Pakete" verwendet. Insbesondere bin ich verwirrt darüber, was ich in diesen Verzeichnissen sehe und wie sich doppelte Pakete in den Verzeichnissen gegenseitig beeinflussen und wo ich Pakete ablegen soll, die ich installiere.

Ich hatte angenommen, dass "Extras"1 war der Speicherort für Pakete, die nicht Teil von Core Python sind, aber dennoch mit einer bestimmten Plattform verteilt wurden. Zum Beispiel wird OS X mit verteiltPyObjC, twisted, undnumpy, unter anderen; und diese sind in 'Extras' zu finden. Ich hatte auch angenommen, dass "Site-Pakete"2 Dort werden Pakete abgelegt, die ich anschließend installiere, und das Verzeichnis ist auf einem "frischen" Computer leer oder nicht vorhanden. Außerdem war ich davon ausgegangen, dass die Installation eines neuen Pakets die Version in "Extras" belässt und alle Aktualisierungen, die ich mache, in "Site-Packages" ablegt, wo sie diejenigen in "Extras" "maskieren". (So ​​könnte zum Beispiel die Standardinstallation einfach durch Löschen von Site-Paketen wiederhergestellt werden.)

Was mich verwirrt, ist, dass der Inhalt meines "Extras" -Verzeichnisses abnimmt. Verglichen mit den Inhalten einer neuen OS X (10.8.2) -Installation fehlen die "Extras" für meine aktuelle Konfiguration

altgraph
altgraph-0.9-py2.7.egg-info
dateutil
macholib
macholib-1.4.2-py2.7.egg-info
modulegraph
modulegraph-0.9.1-py2.7.egg-info
numpy #though numpy-1.6.1-py2.7.egg-info is there
pkg_resources.py  # though .pyc is there
py2app
py2app-0.6.3-py2.7.egg-info
setuptools  # though setuptools-0.6c12dev_r88846-py2.7.egg-info is there
site.py  # though .pyc and .pyo are there
xattr
xattr-0.6.2-py2.7.egg-info
zope
zope.interface-3.5.1-py2.7.egg-info

und hat zwei zusätzliche Dateien in der Neuinstallation nicht gefunden

pkg_resources.py.OLD.1356069438.31
setuptools-0.6c12dev_r88846-py2.7.egg-info.OLD.1356069438.31
setuptools.OLD.1356069438.31

Soweit ich mich erinnere, sind dies alle Pakete, die ich selbst aktualisiert habe, und Versionen von allen sind in "Site-Paketen" enthalten.

Soll der Inhalt des "Extras" -Verzeichnisses auf diese Weise "schwinden"? Verschiebt das Aktualisieren eines Pakets in "Extras" es in "Site-Packages", oder sollten die "Extras" -Versionen von denen in "Site-Packages" einfach "maskiert" werden?

1:/System/Library/Frameworks/Python.framework/Versions/2.7/Extras/lib/python
2:/Library/Python/2.7/site-packages/

Antworten auf die Frage(1)

Ihre Antwort auf die Frage