0%

Isolierte Umgebungen und Pakete

Ein Paket mit pip installieren

Eine leere Umgebung ist isoliert, aber noch nicht nützlich. Installiere ein Paket darin. Falls .venv fehlt, weil die Website das Kapitel zwischen deinen Besuchen gespeichert und wiederhergestellt hat, erstelle sie zuerst erneut. Das ist erwartetes Verhalten: Die Umgebung wird abgeleitet, während die kleinen Projektdateien erhalten bleiben.

Aktiviere .venv erneut, falls deine Eingabeaufforderung nicht mit (.venv) beginnt. Führe dann im Terminal der Website Folgendes aus:

source .venv/bin/activate
python -m pip install requests==2.34.2

Diesmal hat das Terminal mehr zu sagen. Es nennt requests, lädt genau die angeforderte Version herunter, findet die unterstützenden Pakete, von denen requests abhängt, und installiert sie in der aktiven Umgebung.

pip ist Pythons Paketinstallationswerkzeug. Wir rufen es als python -m pip auf, statt uns auf einen alleinstehenden Befehl pip zu verlassen. So ist die Zuordnung eindeutig: Verwende das Installationswerkzeug, das zu diesem python gehört. Wenn mehrere Python-Installationen existieren, verhindert diese kleine Gewohnheit viel Verwirrung.

Die Anforderung genau lesen

Der Text requests==2.34.2 enthält einen Paketnamen und eine exakte Versionsfestlegung. Das doppelte Gleichheitszeichen bedeutet „Installiere diese Version“, nicht bloß „Installiere etwas ausreichend Neues“. Exakte Versionsfestlegungen machen die Übung wiederholbar. Alle in diesem Kurs bekommen das Paketverhalten, für das die Lektion geschrieben wurde.

Frage pip, was es installiert hat:

python -m pip show requests

Suche im Ergebnis nach diesen beiden Zeilen:

Name: requests
Version: 2.34.2

Python das Paket verwenden lassen

Die Ausgabe des Installationswerkzeugs ist noch nicht das Ziel. Ein Paket ist nützlich, wenn Python es importieren kann. Öffne mit nano check_package.py eine kleine Datei und gib diese beiden Zeilen ein:

import requests

print(requests.__version__)

Speichere und beende nano. Führe dann die Datei aus:

python check_package.py

Sie sollte 2.34.2 ausgeben. import requests macht das installierte Paket für dieses Programm verfügbar, und requests.__version__ meldet die tatsächlich geladene Version. Wir stellen noch keine HTTP-Anfrage. Das kommt viel später, wenn Fehler und Zeitüberschreitungen angemessen erklärt werden können.

Derselbe Befehl, ein anderes Regal

Auf der Website von Python Land verwendet pip einen kleinen, von Python Land betriebenen Paketindex innerhalb der Sandbox-Grenze. Er enthält eine geprüfte Auswahl mit festen Versionen für diesen Kurs: requests==2.34.2, pytest==9.1.1 und uv==0.12.3 sowie genau die benötigten unterstützenden Pakete. Lernendencode kann nicht auf das öffentliche Internet ausweichen.

Auf deinem eigenen Computer verwendet gewöhnliches pip den öffentlichen Python Package Index, PyPI. Der folgende Befehl ist weiterhin echtes pip, und die exakte Versionsfestlegung wählt weiterhin dieselbe Veröffentlichung. Nur das konfigurierte Regal ist anders. Erstelle dieselbe zweizeilige check_package.py in deinem lokalen Übungsverzeichnis, bevor du den letzten Befehl ausführst.

source .venv/bin/activate
python -m pip install requests==2.34.2
python -m pip show requests
python check_package.py

Warum verwendet dieser Kurs python -m pip?

Du kennst jetzt den erfolgreichen Ablauf. Die Fehlermeldung ist genauso wichtig, denn sie sagt dir, ob du einen Namen korrigieren oder auf einen Dienst warten solltest.