Installing Python Modules

Email:

distutils-sig@python.org

As a popular open source development project, Python has an active supporting community of contributors and users that also make their software available for other Python developers to use under open source license terms.

Dies ermöglicht es Python-Nutzern, effektiv zusammenzuarbeiten und sich auszutauschen; sie profitieren von Lösungen, die andere bereits für häufige (und bisweilen sogar seltene!) Probleme entwickelt haben, und können ihrerseits eigene Lösungen zu diesem gemeinsamen Pool beisteuern.

Dieser Leitfaden behandelt den Installationsschritt des Prozesses. Für eine Anleitung zum Erstellen und Teilen eigener Python-Projekte beachte den Python Packaging User Guide.

Bemerkung

Für Unternehmen und andere institutionelle Nutzer: Bitte beachten Sie, dass viele Organisationen eigene Richtlinien zur Nutzung von und zur Mitarbeit an Open-die mit Python bereitgestellten Tools für Distribution und Installation verwenden.

Schlüsselbegriffe

  • pip is the preferred installer program. Starting with Python 3.4, it is included by default with the Python binary installers.

  • Eine virtuelle Umgebung ist eine teilisolierte Python-Umgebung, die es ermöglicht, Pakete für die Verwendung durch eine bestimmte Anwendung zu installieren, anstatt sie systemweit zu installieren.

  • venv is the standard tool for creating virtual environments, and has been part of Python since Python 3.3. Starting with Python 3.4, it defaults to installing pip into all created virtual environments.

  • virtualenv is a third party alternative (and predecessor) to venv. It allows virtual environments to be used on versions of Python prior to 3.4, which either don’t provide venv at all, or aren’t able to automatically install pip into created environments.

  • The Python Package Index is a public repository of open source licensed packages made available for use by other Python users.

  • the Python Packaging Authority is the group of developers and documentation authors responsible for the maintenance and evolution of the standard packaging tools and the associated metadata and file format standards. They maintain a variety of tools, documentation, and issue trackers on GitHub.

  • distutils is the original build and distribution system first added to the Python standard library in 1998. While direct use of distutils is being phased out, it still laid the foundation for the current packaging and distribution infrastructure, and it not only remains part of the standard library, but its name lives on in other ways (such as the name of the mailing list used to coordinate Python packaging standards development).

Geändert in Version 3.5: Die Verwendung von venv wird nun für das Erstellen virtueller Umgebungen empfohlen.

Grundlegende Verwendung

Die Standard-Paketierungswerkzeuge sind alle für die Verwendung über die Befehlszeile konzipiert.

The following command will install the latest version of a module and its dependencies from the Python Package Index:

python -m pip install SomePackage

Bemerkung

Für POSIX-Anwender (einschließlich macOS- und Linux-Nutzern) setzen die Beispiele in diesem Leitfaden die Verwendung einer virtuellen Umgebung voraus.

Für Windows-Benutzer setzen die Beispiele in dieser Anleitung voraus, dass bei der Installation von Python die Option zur Anpassung der System-Umgebungsvariablen PATH ausgewählt wurde.

Es ist auch möglich, eine genaue oder minimale Version direkt auf der Befehlszeile anzugeben. Bei Verwendung von Vergleichsoperatoren wie >, < oder anderen „Sonderzeichen, die von der Shell interpretiert werden, sollte der Paketname und “die Version in doppelten Anführungszeichen gesetzt werden::“

python -m pip install SomePackage==1.0.4    # speziische Version
python -m pip install "SomePackage>=1.0.4"  # mindestens geforderte Version

Wenn ein geeignetes Modul bereits installiert ist, hat ein erneuter Installationsversuch normalerweise keine Auswirkung. Die Aktualisierung vorhandener Module muss ausdrücklich angefordert werden:

python -m pip install --upgrade SomePackage

More information and resources regarding pip and its capabilities can be found in the Python Packaging User Guide.

Virtuelle Umgebungen werden mithilfe des Moduls venv erstellt. Für die Installation von Paketen in einer aktiven virtuellen Umgebung werden die oben gezeigten Befehle verwendet.

Wie mach ich es …?

Dies sind schnelle Antworten oder Links für übliche Aufgaben.

… install pip in versions of Python prior to Python 3.4?

Python only started bundling pip with Python 3.4. For earlier versions, pip needs to be „bootstrapped“ as described in the Python Packaging User Guide.

… Pakete nur für den aktuellen Benutzer installieren?

Die Übergabe der Option --user an python -m pip install installiert ein Paket nur für den aktuellen Benutzer, anstatt für alle Benutzer des Systems.

… wissenschaftliche Python-Pakete installieren?

A number of scientific Python packages have complex binary dependencies, and aren’t currently easy to install using pip directly. At this point in time, it will often be easier for users to install these packages by other means rather than attempting to install them with pip.

Siehe auch

Python Packaging User Guide: Installation wissenschaftlicher Pakete <https://packaging.python.org/science/>“

…mit mehreren parallel installierten Python-Versionen arbeiten?

On Linux, macOS, and other POSIX systems, use the versioned Python commands in combination with the -m switch to run the appropriate copy of pip:

python2   -m pip install SomePackage  # default Python 2
python2.7 -m pip install SomePackage  # specifically Python 2.7
python3   -m pip install SomePackage  # default Python 3
python3.4 -m pip install SomePackage  # specifically Python 3.4

Appropriately versioned pip commands may also be available.

On Windows, use the py Python launcher in combination with the -m switch:

py -2   -m pip install SomePackage  # default Python 2
py -2.7 -m pip install SomePackage  # specifically Python 2.7
py -3   -m pip install SomePackage  # default Python 3
py -3.4 -m pip install SomePackage  # specifically Python 3.4

Häufige Installationsprobleme

Installation in das System-Python unter Linux

On Linux systems, a Python installation will typically be included as part of the distribution. Installing into this Python installation requires root access to the system, and may interfere with the operation of the system package manager and other components of the system if a component is unexpectedly upgraded using pip.

On such systems, it is often better to use a virtual environment or a per-user installation when installing packages with pip.

Pip ist nicht installiert.

It is possible that pip does not get installed by default. One potential fix is:

python -m ensurepip --default-pip

There are also additional resources for installing pip.

Installation von Binärerweiterungen

Python has typically relied heavily on source based distribution, with end users being expected to compile extension modules from source as part of the installation process.

With the introduction of support for the binary wheel format, and the ability to publish wheels for at least Windows and macOS through the Python Package Index, this problem is expected to diminish over time, as users are more regularly able to install pre-built extensions rather than needing to build them themselves.

Some of the solutions for installing scientific software that are not yet available as pre-built wheel files may also help with obtaining other binary extensions without needing to build them locally.