Python-Pakete (Module)

高洛峰
Freigeben: 2016-10-19 13:33:24
Original
1222 Leute haben es durchsucht

Der Unterschied zwischen verschiedenen Methoden der Python-Paketverwaltung

Ich lerne Python schon seit einiger Zeit und stoße oft auf das Problem, verschiedene Pakete zu installieren, manchmal setup.py, manchmal easy_install und manchmal pip. Es gibt auch einige Konzepte wie Distutils, Setuptools usw. Es ist unklar, wer wer ist und wann ich was verwenden soll. Heute werde ich diese Konzepte klären.

distutils

distutils ist Teil der Python-Standardbibliothek. Ihre ursprüngliche Absicht besteht darin, Entwicklern eine praktische Verpackungsmethode und Benutzern eine praktische Installationsmethode bereitzustellen.

Sie erstellen beispielsweise ein Paket mit dem Namen foo, das eine foo.py-Datei enthält, und möchten es verpacken, damit andere es verwenden können. Zu diesem Zeitpunkt müssen Sie eine setup.py-Datei schreiben:

from distutils.core import setup

setup(name='foo',

version='1.0' ,

py_modules=['foo'],

)

Dann führen Sie den Befehl

$python setup.py sdist

aus Dann finden Sie im aktuellen Verzeichnis einen Ordner namens dist, der ein foo-1.0.tar.gz-Paket enthält. Dieses Paket enthält drei Dateien: foo.py, setup.py, PKG-INFO. Die ersten beiden Dateien sind mit den beiden zuvor erwähnten Dateien identisch. PKG-INFO sind einige Informationen über das Paket. Dann können Sie foo-1.0.tar.gz für andere installieren.

Wenn der Installer dieses Paket verwenden möchte, muss er nur die Datei foo-1.0.tar.gz dekomprimieren und dann den Befehl

$python setup install

Das Paket wird automatisch an der entsprechenden Stelle auf dem System installiert.

setuptools

setuptools ist eine Erweiterung zu Distutils, insbesondere die Einführung der Paketabhängigkeitsverwaltung.

setuptools können Egg-Dateien für Python-Pakete erstellen. Die Beziehung zwischen Python- und Egg-Dateien entspricht der Beziehung zwischen Java- und JAR-Paketen.

Das von setuptools bereitgestellte easy_install-Skript kann zum Installieren von Egg-Paketen verwendet werden. Darüber hinaus kann easy_install automatisch relevante Pakete von PyPI herunterladen und die Installation und Aktualisierung abschließen.

easy_install bietet eine Vielzahl von Möglichkeiten zum Installieren und Aktualisieren von Python-Paketen, wie zum Beispiel:

easy_install SQLObject

easy_install -f http://pythonpaste.org/package_index.html SQLObject

easy_install http://example.com/path/to/MyPackage-1.2.3.tgz

easy_install /my_downloads/OtherPackage-3.2.1-py2.3.egg

easy_install --upgrade PyProtocols

Spätere Entwickler waren der Meinung, dass die Entwicklung von setuptools zu langsam war und gaben das Distribute-Projekt auf. Im August 2013 wurde Distribute dann wieder in setuptools 0.7 integriert.

pip

pip ist ein Tool zum Installieren und Verwalten von Python-Paketen. Es handelt sich um eine Erweiterung zu easy_install. Sie können Pakete auch automatisch von PyPI herunterladen und installieren.

In pip

Alle erforderlichen Pakete müssen vor der Installation heruntergeladen werden, sodass keine Situation auftritt, in der ein Teil installiert ist und der andere Teil nicht.

Alle installiert Pakete werden nachverfolgt, sodass Sie wissen, warum sie installiert wurden und deinstalliert werden können.

Keine Notwendigkeit, eine Eierfeile zu verwenden.

Einfach zu verwenden:

pip install pkg_name

pip uninstall pkg_name


Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage