- 1 1. Einführung
- 2 2. Wie überprüft man die Python-Version
- 3 3. Wie wählt man ein Tool zur Verwaltung von Python-Versionen aus
- 3.1 3-1. Arten von Python-Version-Management-Tools
- 3.2 3-2. pyenv (Am besten für Python-Version-Management)
- 3.3 3-3. venv (Bei Verwendung virtueller Umgebungen)
- 3.4 3-4. Anaconda (Für Data Science und Machine Learning)
- 3.5 3-5. asdf (Multi-Sprach-Version-Manager)
- 3.6 3-6. Welches Tool sollten Sie wählen?
- 3.7 3-7. Zusammenfassung
- 4 4. Verwendung von virtuellen Umgebungen
- 5 5. Best Practices für die Verwaltung von Versionen und Abhängigkeiten
- 5.1 5-1. Erstellen Sie eine virtuelle Umgebung pro Projekt
- 5.2 5-2. Klären und Verwalten von Abhängigkeiten
- 5.3 5-3. Verwalten Sie Entwicklungsumgebungen und Produktionsumgebungen getrennt
- 5.4 5-4. Standardisieren von Umgebungen in der Team-Entwicklung
- 5.5 5-5. Häufige Probleme und Lösungen
- 5.6 5-6. Zusammenfassung
- 6 6. FAQ (Häufig gestellte Fragen)
- 6.1 6-1. Kann ich mehrere Python-Versionen gleichzeitig verwenden?
- 6.2 6-2. Wie lösche ich eine virtuelle Umgebung?
- 6.3 6-3. Wie verwende ich eine andere Python-Version für ein bestimmtes Projekt?
- 6.4 6-4. Wie wähle ich ein Versionsverwaltungstool aus?
- 6.5 6-5. Änderungen von pyenv werden nicht widergespiegelt, wenn python --version ausgeführt wird
- 6.6 6-6. Welches sollte ich verwenden: venv oder Poetry?
- 6.7 6-7. Wie pinne ich Bibliotheken, die mit pip install installiert wurden, an ein Projekt?
- 6.8 6-8. Zusammenfassung
1. Einführung
Python ist eine beliebte Programmiersprache, die von einer breiten Palette von Nutzern verwendet wird, von Anfängern bis hin zu Profis. Allerdings werden Python-Versionen häufig aktualisiert, weshalb viele Menschen es herausfordernd finden, Entwicklungsumgebungen zu warten und Versionen über verschiedene Projekte hinweg zu verwalten.
Dieser Artikel erklärt, warum die Python-Versionverwaltung wichtig ist und wie Versionen detailliert verwaltet werden können. Er behandelt auch, wie Versionsverwaltungstools ausgewählt werden können, und bietet konkrete Verwendungsbeispiele, sodass Sie sich darauf beziehen können, wenn Sie Python effizienter nutzen möchten.
1-1. Warum die Python-Versionverwaltung wichtig ist
Um zu verstehen, warum die Python-Versionverwaltung wichtig ist, betrachten Sie die folgenden Szenarien.
1-1-1. Verschiedene Projekte können unterschiedliche Python-Versionen erfordern
Bei der Entwicklung von Unternehmenssystemen und individuellen Programmierprojekten können aufgrund der verwendeten Bibliotheken oder Frameworks bestimmte Python-Versionen erforderlich sein. Zum Beispiel:
- Django 2.2 supports Python 3.5 to 3.8
- TensorFlow 1.x supports Python 2.7 or 3.5
- TensorFlow 2.x requires Python 3.6 or higher
Da verschiedene Tools unterschiedliche Python-Versionen empfehlen, kann das Fehlen einer ordnungsgemäßen Umgebungsverwaltung dazu führen, dass Bibliotheken nicht mehr funktionieren.
1-1-2. Das direkte Ändern der systeminstallierten Python kann Probleme verursachen
Windows, macOS und Linux können Python als Teil des Systems installiert haben. Besonders unter Linux hängen einige OS-Funktionen von Python ab, sodass das Ändern der System-Python-Version zu unerwarteten Fehlern führen kann.
Wenn Sie die System-Python durch die Installation einer anderen Version ohne Verwendung eines Versionsmanagers überschreiben, kann dies das Verhalten des Betriebssystems beeinträchtigen, weshalb eine ordnungsgemäße Verwaltung notwendig ist.
1-1-3. Die Standardisierung von Entwicklungsumgebungen macht die Team-Entwicklung reibungsloser
Bei der Team-Entwicklung ist es wünschenswert, dass alle Mitglieder in derselben Umgebung arbeiten. Wenn die Python-Version eines Projekts unterschiedlich ist, kann das Verhalten je nach Entwickler variieren und zu Fehlern führen.
Die Verwendung von Versionsverwaltungstools ermöglicht es allen, eine einheitliche Umgebung zu nutzen, was die Entwicklungseffizienz verbessert.
1-2. Wie Python-Versionen verwaltet werden
Es gibt mehrere Möglichkeiten, Python-Versionen zu verwalten. Die wichtigsten Tools umfassen die folgenden.
1-2-1. pyenv
Das am weitesten verwendete Python-Versionsverwaltungstool ist pyenv. Es ermöglicht Ihnen, einfach zwischen verschiedenen Python-Versionen zu wechseln und mehrere Versionen zu verwalten, ohne die System-Python zu beeinträchtigen.
1-2-2. venv
Ein virtuelles Umgebungstool, das als Teil der Python-Standardbibliothek bereitgestellt wird und isolierte Umgebungen pro Projekt erstellt. Es unterscheidet sich leicht von der Versionsverwaltung, ist aber nützlich, wenn Umgebungen erstellt werden, die von einer bestimmten Python-Version abhängen.
1-2-3. Anaconda
Ein Tool zur Verwaltung von Python-Umgebungen für Data Science und Machine Learning, das das Paketverwaltungssystem namens „conda“ verwendet, um Python-Versionen zu verwalten.
1-2-4. asdf
Ein Tool, das Versionen für mehrere Programmiersprachen verwalten kann, nicht nur für Python, wie z. B. Node.js und Ruby. Da Sie Python-Versionen pro Projekt wechseln können, ist es einfacher, Konsistenz in Entwicklungsumgebungen zu wahren.
1-3. Zusammenfassung
Die Python-Versionverwaltung ist ein wichtiger Faktor, der die Entwicklungseffizienz und Systemstabilität stark beeinflusst. Besonders für Entwickler, die an mehreren Projekten gleichzeitig arbeiten, oder Nutzer, die verschiedene Python-Versionen ausprobieren möchten, ist die Verwendung des richtigen Verwaltungstools unerlässlich.
Der nächste Abschnitt behandelt detailliert, wie Ihre Python-Version überprüft werden kann. Indem Sie wissen, welche Python-Versionen in Ihrer Umgebung installiert sind, sind Sie vorbereitet, um Versionen reibungslos zu verwalten.
2. Wie überprüft man die Python-Version
Bevor man Python-Versionen verwaltet, ist es wichtig zu verstehen, wie man die derzeit verwendete Python-Version überprüft. Wenn Sie die richtige Version nicht kennen, kann Ihr Code in einer unerwarteten Umgebung ausgeführt werden und Probleme verursachen.
Dieser Abschnitt erklärt, wie man die Python-Version unter Windows, macOS und Linux überprüft.
2-1. Wie überprüft man die Python-Version unter Windows
Unter Windows können Sie die Python-Version mit der Eingabeaufforderung (cmd) oder PowerShell überprüfen.
2-1-1. Wie überprüft man mit der Eingabeaufforderung
- Drücken Sie die [Win]-Taste + [R]-Taste, geben Sie ‚cmd‘ ein und öffnen Sie die Eingabeaufforderung.
- Geben Sie den folgenden Befehl ein und drücken Sie Enter.
python --version
oder
python -V
- Die aktuelle Python-Version wird auf dem Bildschirm angezeigt.
Python 3.10.4
2-1-2. Wie überprüft man mit PowerShell
Die grundlegenden Schritte sind bei der Verwendung von PowerShell dieselben.
- Öffnen Sie das Startmenü, suchen Sie nach ‚PowerShell‘ und starten Sie PowerShell.
- Geben Sie den folgenden Befehl ein und drücken Sie Enter.
python --version
- Die Python-Version wird auf dem Bildschirm angezeigt.
Hinweise:
- Je nach Installationsort von Python müssen Sie möglicherweise
python3
anstelle vonpython
verwenden. - Wenn der Befehl nicht erkannt wird, überprüfen Sie, ob Ihre Umgebungsvariablen korrekt konfiguriert sind.
2-2. Wie überprüft man die Python-Version unter macOS
Unter macOS ist Python oft standardmäßig installiert, sodass Sie das Terminal verwenden können, um die Version zu überprüfen.
2-2-1. Wie überprüft man mit dem Terminal
- Drücken Sie [Command] + [Space], geben Sie ‚Terminal‘ ein und öffnen Sie das Terminal.
- Geben Sie den folgenden Befehl ein.
python3 --version
oder
python3 -V
- Das Ergebnis wird angezeigt.
Python 3.9.7
2-2-2. Beachten Sie den Unterschied zwischen Python 2 und Python 3
Unter macOS kann der Befehl python
mit Python 2.x verknüpft sein. Bei der Verwendung von Python 3.x ist es üblich, den Befehl python3
zu verwenden.
python --version # Kann Python 2.x anzeigen
python3 --version # Zeigt die Python 3.x-Version an
Hinweise:
- In neueren Versionen von macOS (Big Sur und später) ist Python 2.x veraltet und Python 3.x wird standardmäßig verwendet.
2-3. Wie überprüft man die Python-Version unter Linux
Unter Linux sind viele Distributionen (Ubuntu, Debian, CentOS, Fedora usw.) mit Python vorinstalliert. Verwenden Sie das Terminal, um die Version zu überprüfen.
2-3-1. Wie überprüft man mit dem Terminal
- Öffnen Sie ein Terminal und führen Sie den folgenden Befehl aus.
python3 --version
oder
python3 -V
- Die Ausgabe sieht so aus.
Python 3.8.10
2-3-2. Wie überprüft man, ob Python 2 installiert ist
Auf einigen älteren Systemen kann Python 2.x noch vorhanden sein. Sie können es mit dem folgenden Befehl überprüfen.
python --version
Wenn dieser Befehl Python 2.x.x
anzeigt, könnte Python 2.x die Standardeinstellung sein.
2-3-3. Wenn Python nicht installiert ist
Wenn die Ausführung von python3 --version
zu einem Fehler wie ‚Command ‚python3′ not found‘ führt, ist Python möglicherweise nicht installiert. In diesem Fall können Sie es mit den folgenden Befehlen installieren.
Ubuntu/Debian:
sudo apt update
sudo apt install python3
CentOS/RHEL:
sudo yum install python3
Fedora:
sudo dnf install python3
2-4. Zusammenfassung
Die Methode zur Überprüfung der Python-Version unterscheidet sich leicht zwischen Windows, macOS und Linux, aber im Allgemeinen verwenden Sie die Befehle python --version
oder python3 --version
.
- Windows→ In der Eingabeaufforderung (cmd) oder PowerShell verwenden Sie
python --version
- macOS→ Im Terminal verwenden Sie
python3 --version
- Linux→ Im Terminal verwenden Sie
python3 --version
; wenn Python 2 vorhanden ist, überprüfen Sie auchpython --version
Um Versionen ordnungsgemäß zu verwalten, ist es wichtig, zunächst Ihre aktuelle Umgebung genau zu verstehen. Der nächste Abschnitt erklärt, wie man Python-Version-Management-Tools auswählt und deren Funktionen detailliert beschreibt.

3. Wie wählt man ein Tool zur Verwaltung von Python-Versionen aus
Die Verwendung eines speziellen Tools ist der effizienteste Weg, um Python-Versionen ordnungsgemäß zu verwalten. Allerdings gibt es verschiedene Version-Management-Tools, sodass Sie möglicherweise unsicher sind, welches Sie wählen sollen.
Dieser Abschnitt stellt repräsentative Tools für die Python-Version-Verwaltung vor und erklärt ihre Funktionen und geeigneten Anwendungsfälle.
3-1. Arten von Python-Version-Management-Tools
Python-Version-Management-Tools umfassen die folgenden Typen.
Tool | Hauptverwendung / Merkmale | Unterstützte Betriebssysteme | Bedienfreundlichkeit |
---|---|---|---|
pyenv | Leicht zwischen verschiedenen Python-Versionen wechseln | Windows, macOS, Linux | ◎ |
venv | Pythons integrierte Funktion für virtuelle Umgebungen. Ermöglicht die Erstellung von Umgebungen pro Projekt | Alle Betriebssysteme | ○ |
Anaconda(conda) | Umgebungsverwaltung für Data Science und Machine Learning | Windows, macOS, Linux | ○ |
asdf | Kann Versionen mehrerer Programmiersprachen verwalten | Windows, macOS, Linux | △ |
Jedes Tool hat Vor- und Nachteile, daher ist es wichtig, das richtige für Ihre Bedürfnisse auszuwählen.
3-2. pyenv (Am besten für Python-Version-Management)
3-2-1. Was ist pyenv?
pyenv
ist ein Tool, das das Wechseln von Python-Versionen erleichtert.
Es ist nützlich, wenn Sie verschiedene Python-Versionen für spezifische Projekte oder Entwicklungsumgebungen benötigen.
3-2-2. Vorteile von pyenv
- Ermöglicht das Koexistieren mehrerer Python-Versionen
- Beeinflusst das System-Python nicht
- Versionen mit einem einzigen Befehl wechseln
- Verfügbar unter Windows, macOS und Linux
3-2-3. Empfohlen für
- Möchten verschiedene Python-Versionen pro Projekt verwenden
- Möchten Versionen leicht wechseln
- Möchten die globale Python-Version nicht ändern
3-3. venv (Bei Verwendung virtueller Umgebungen)
3-3-1. Was ist venv?
venv
ist das Standard-Tool von Python zur Erstellung virtueller Umgebungen. Sein Zweck ist nicht die Verwaltung der Python-Version selbst, sondern die Erstellung isolierter Umgebungen pro Projekt.
3-3-2. Vorteile von venv
- Standardmäßig in Python enthalten; keine zusätzliche Installation erforderlich
- Ermöglicht die Verwaltung unterschiedlicher Bibliotheken pro virtueller Umgebung
- Kann Abhängigkeiten eines Projekts isolieren
3-3-3. Empfohlen für
- Möchten Bibliotheksumgebungen pro Projekt trennen
- Möchten Umgebungen ohne Installation neuer Tools verwalten
- Möchten virtuelle Umgebungen verwenden statt Python-Versionen zu verwalten
3-4. Anaconda (Für Data Science und Machine Learning)
3-4-1. Was ist Anaconda?
Anaconda
ist eine Python-Distribution, die für die Entwicklung in Data Science und Machine Learning optimiert ist. Es verwendet das Paketmanagement-Tool conda
zur Verwaltung von Python-Versionen und Bibliotheken.
3-4-2. Vorteile von Anaconda
- Enthält Data-Science-Bibliotheken (numpy, pandas, scikit-learn usw.)
- Funktioniert gut mit Jupyter Notebook
- Einfaches Paketmanagement (mit dem conda-Befehl)
3-4-3. Empfohlen für
- Betreiben von Machine Learning oder Datenanalyse
- Verwenden häufig Jupyter Notebook
- Möchten Python-Umgebungen leicht einrichten
3-5. asdf (Multi-Sprach-Version-Manager)
3-5-1. Was ist asdf?
asdf
ist ein Tool zur zentralen Verwaltung von Versionen mehrerer Programmiersprachen, nicht nur Python, wie Node.js, Ruby und Go.
3-5-2. Vorteile von asdf
- Kann Sprachen außer Python an einem Ort verwalten
- Kann verschiedene Versionen pro Projekt festlegen
- Kann Python wechseln, ohne die globale Umgebung zu beeinflussen
3-5-3. Empfohlen für
- Verwenden Programmiersprachen außer Python
- Möchten Versionen pro Projekt flexibel wechseln
- Möchten mehrere Entwicklungsumgebungen effizient verwalten
3-6. Welches Tool sollten Sie wählen?
Wählen Sie basierend auf den folgenden Kriterien das Version-Management-Tool, das am besten zu Ihnen passt.
Zweck / Nutzung | Bestes Tool |
---|---|
Möchten leicht zwischen verschiedenen Python-Versionen wechseln | pyenv |
Möchten virtuelle Umgebungen verwenden | venv |
Betreiben von Machine Learning oder Datenanalyse | Anaconda |
Möchten Sprachen außer Python an einem Ort verwalten | asdf |
3-7. Zusammenfassung
Python-Version-Management-Tools haben unterschiedliche Eigenschaften. Welches Tool Sie wählen sollten, hängt vonwofür Sie Python verwenden werden ab.
- Allgemeine Version-Verwaltung→pyenv
- Verwenden virtueller Umgebungen→venv
- Data Science und Machine Learning→Anaconda
- Sprachen über Python hinaus verwalten→asdf
Der nächste Abschnitt erklärt „Verwendung virtueller Umgebungen“ im Detail. Er stellt vor, wie die Verwendung virtueller Umgebungen Ihnen ermöglicht, projektspezifische Abhängigkeiten ordnungsgemäß zu verwalten und die Konsistenz der Umgebung aufrechtzuerhalten.
4. Verwendung von virtuellen Umgebungen
Das Versionsmanagement von Python erfordert die Nutzung einer virtuellen Umgebung. Durch die Verwendung virtueller Umgebungen können Sie isolierte Umgebungen pro Projekt erstellen und verschiedene Bibliotheken sowie Python-Versionen koexistieren lassen.
Dieser Abschnitt erklärt die grundlegenden Konzepte virtueller Umgebungen und beschreibt detailliert, wie man die wichtigsten Tools (venv
, Poetry
) verwendet.
4-1. Was ist eine virtuelle Umgebung?
Eine virtuelle Umgebung ist ein Mechanismus, um eine Python-Laufzeitumgebung pro Projekt zu isolieren. Normalerweise werden Python-Pakete (Bibliotheken) systemweit installiert, aber durch die Verwendung virtueller Umgebungen können Sie unterschiedliche Pakete für jedes Projekt verwalten.
4-1-1. Vorteile der Verwendung virtueller Umgebungen
- Verhindert Bibliotheks-Konflikte zwischen verschiedenen Projekten
- Zum Beispiel, wenn Projekt A Django 3.2 benötigt und Projekt B Django 4.0, ermöglichen virtuelle Umgebungen ihr Koexistieren.
- Entwickeln, ohne die System-Python-Umgebung zu verschmutzen
- Sie können eine saubere Umgebung beibehalten, ohne die System-Python zu beeinflussen.
- Erleichtert die Standardisierung von Umgebungen in der Team-Entwicklung
- Durch die Verwendung virtueller Umgebungen und das Teilen von
requirements.txt
oderpyproject.toml
können alle Teammitglieder dieselbe Umgebung erstellen.
4-2. Erstellen virtueller Umgebungen mit venv
Python enthält das venv
-Tool in der Standardbibliothek zur Erstellung virtueller Umgebungen. Es ist keine zusätzliche Installation erforderlich, und Sie können es sofort verwenden.
4-2-1. So erstellen Sie eine virtuelle Umgebung
- Erstellen Sie ein Verzeichnis für das Projekt
mkdir my_project
cd my_project
- Erstellen Sie die virtuelle Umgebung
python3 -m venv venv
Hier ist venv
der Ordnername für die virtuelle Umgebung. Sie können jeden Namen wählen.
4-2-2. Aktivieren der virtuellen Umgebung
Das Aktivieren der virtuellen Umgebung ermöglicht die Nutzung von Python und den Bibliotheken, die spezifisch für diese Umgebung sind.Unter Windows:
venvScriptsctivate
Unter macOS/Linux:
source venv/bin/activate
Beim Aktivieren wird (venv)
im Prompt angezeigt.
(venv) user@hostname:~/my_project$
4-2-3. Deaktivieren der virtuellen Umgebung
Um die virtuelle Umgebung zu deaktivieren, führen Sie den folgenden Befehl aus.
deactivate
4-2-4. Entfernen einer virtuellen Umgebung
Wenn Sie eine virtuelle Umgebung nicht mehr benötigen, können Sie den Ordner einfach löschen.macOS/Linux:
rm -rf venv
Windows:
rd /s /q venv
4-3. Verwalten von virtuellen Umgebungen und Abhängigkeiten mit Poetry
Zusätzlich zur Standard-venv
-Bibliothek ist Poetry als Tool für fortgeschrittenes Paketmanagement ebenfalls beliebt.
4-3-1. Was ist Poetry?
Poetry ist ein Tool, das die Abhängigkeitsverwaltung und die Erstellung virtueller Umgebungen für Python-Projekte handhabt. Es bietet eine flexiblere Verwaltung als venv
und eignet sich gut für die moderne Python-Entwicklung.
4-3-2. Installieren von Poetry
Um Poetry zu installieren, führen Sie den folgenden Befehl aus.
curl -sSL https://install.python-poetry.org | python3 -
Nach der Installation können Sie mit dem folgenden Befehl überprüfen.
poetry --version
4-3-3. Erstellen einer virtuellen Umgebung mit Poetry
Die Schritte zum Erstellen eines neuen Projekts mit Poetry und zum Einrichten einer virtuellen Umgebung sind wie folgt.
- Erstellen Sie den Projektordner
mkdir poetry_project
cd poetry_project
- Initialisieren Sie das Projekt mit Poetry
poetry init
- Geben Sie die Projektdaten interaktiv ein.
- Eine Konfigurationsdatei namens
pyproject.toml
wird erstellt.
- Erstellen Sie die virtuelle Umgebung
poetry install
Dies erstellt automatisch eine virtuelle Umgebung und installiert die erforderlichen Pakete.
- Aktivieren Sie die virtuelle Umgebung
poetry shell
- Pakete hinzufügen und verwalten
poetry add requests
poetry add numpy@latest
- Deaktivieren Sie die virtuelle Umgebung
exit
4-4. Vergleich von venv
und Poetry
Funktion | venv | Poetry |
---|---|---|
Python-Standardtool | ✅ | ❌ (erfordert zusätzliche Installation) |
Erstellt virtuelle Umgebungen | ✅ | ✅ |
Abhängigkeitsverwaltung | ❌ (manuell verwaltet) | ✅ (automatische Verwaltung) |
Paketverwaltung | pip wird verwendet | Einfach mit dem poetry add -Befehl verwaltet |
Anfängerfreundlich | ✅ | △ (etwas Lernkurve) |
Schlussfolgerung:
- Für einfache virtuelle Umgebungen →
venv
- Für automatisierte Abhängigkeitsverwaltung →
Poetry
4-5. Zusammenfassung
Die Verwendung virtueller Umgebungen macht die Paketverwaltung in Python effizient. Besonders wenn Sie unterschiedliche Bibliotheken pro Projekt handhaben oder die System-Python-Umgebung nicht verschmutzen möchten, ist die Nutzung von venv
oder Poetry
am besten.
- venv→ Einfache Erstellung virtueller Umgebungen (Python-Standard)
- Poetry→ Fortgeschrittenes Tool für virtuelle Umgebungen inklusive Abhängigkeitsverwaltung
Als Nächstes behandeln wir Best Practices für Versionskontrolle und Abhängigkeitsverwaltung. Lernen Sie, wie Sie Ihre Python-Entwicklungsumgebung effizienter betreiben.
5. Best Practices für die Verwaltung von Versionen und Abhängigkeiten
Mit dem Verständnis der Python-Versionsverwaltung und der Nutzung virtueller Umgebungen hier sindBest Practices, die in realen Entwicklungsumgebungen nützlich sind. Durch die Anwendung geeigneter Verwaltungsmethoden können Sie Umgebungschaos verhindern und Python-Projekte effizient ausführen.
5-1. Erstellen Sie eine virtuelle Umgebung pro Projekt
Um Python-Versionen ordnungsgemäß zu verwalten,gilt die Grundregel, für jedes Projekt eine virtuelle Umgebung zu erstellen.
Die Verwendung des System-Python wie es ist, erleichtert das Auftreten von Bibliotheks-Konflikten und Umgebungskontamination.
5-1-1. Empfohlene Best Practices für die Verwaltung virtueller Umgebungen
- Erstellen Sie eine virtuelle Umgebung für jedes Projekt
python3 -m venv venv
- Aktivieren Sie die virtuelle Umgebung
source venv/bin/activate # macOS/Linux
venvScriptsctivate # Windows
- Installieren Sie Bibliotheken
pip install requests pandas
✅Schlüsselpunkte:
- Das Erstellen virtueller Umgebungen verhindert Interferenzen mit Bibliotheken aus anderen Projekten.
- Es erleichtert die Reproduktion einer konsistenten Umgebung in der Team-Entwicklung.
5-2. Klären und Verwalten von Abhängigkeiten
Beim Teilen eines Projekts oder beim Wiederaufbau der Umgebung in der Zukunft ist es wichtig, Abhängigkeiten (die Liste der installierten Bibliotheken) explizit zu verwalten.
5-2-1. Verwenden Sie requirements.txt
In Python können Sie den pip freeze
-Befehl verwenden, um die Liste der derzeit installierten Bibliotheken in requirements.txt
zu speichern.
- Notieren Sie die Bibliotheken in der aktuellen Umgebung
pip freeze > requirements.txt
- Installieren Sie dieselben Bibliotheken in einer anderen Umgebung neu
pip install -r requirements.txt
✅Vorteile:
- Teilen Sie leicht dieselbe Umgebung mit Teammitgliedern.
- Reproduzieren Sie schnell eine konsistente Bibliothekskonfiguration in einer neuen Umgebung.
5-2-2. Verwenden Sie pyproject.toml
(bei Verwendung von Poetry)
Wenn Sie Poetry verwenden, wird empfohlen, Abhängigkeiten in pyproject.toml
aufzulisten.
- Fügen Sie Pakete hinzu
poetry add numpy pandas
- Überprüfen Sie die Abhängigkeitsdateien
pyproject.toml
poetry.lock
✅Vorteile:
- Sie können Abhängigkeiten knapper verwalten als mit
pip freeze
. - Einfacher, Versionen zu fixieren, was die Reproduzierbarkeit der Umgebung verbessert.
5-3. Verwalten Sie Entwicklungsumgebungen und Produktionsumgebungen getrennt
Entwicklungsumgebungen und Produktionsumgebungen können unterschiedliche Bibliotheksversionen und Einstellungen verwenden. Daher ist es Best Practice, Bibliotheken, die nur für die Entwicklung verwendet werden, klar von denen zu trennen, die in der Produktion benötigt werden.
5-3-1. Bereiten Sie eine requirements-dev.txt
vor
Das Trennen von Bibliotheken, die nur in der Entwicklungsumgebung benötigt werden (z. B. Test- und Formatierungstools wie pytest
und black
), hält die Produktionsumgebung einfach.Beispiel:
pip freeze > requirements-dev.txt
In der Produktion verwenden Sie nur die grundlegende requirements.txt
, und in der Entwicklung kombinieren Sie sie mit requirements-dev.txt
für eine einfachere Verwaltung.
5-4. Standardisieren von Umgebungen in der Team-Entwicklung
In der Team-Entwicklung ist es wichtig, die Umgebung jedes Mitglieds zu standardisieren.
Hier sind Punkte, um Versionen ordnungsgemäß zu verwalten, damit das Projekt reibungslos voranschreitet.
5-4-1. Standardisieren Sie die Python-Version
- Verwenden Sie
pyenv
, um sicherzustellen, dass das Team eine einheitliche Python-Version verwendet. - Erstellen Sie eine
.python-version
-Datei im Projektstammverzeichnis, um die Python-Version zu fixieren.
Beispiel:
echo "3.10.4" > .python-version
5-4-2. Verwenden Sie .venv
Wenn das Team venv
verwendet, erleichtert das Erstellen der virtuellen Umgebung in einem versteckten Ordner namens .venv
anstelle eines venv
-Verzeichnisses die Git-Verwaltung.Beispiel:
python3 -m venv .venv
Fügen Sie dann .venv/
zu .gitignore
hinzu, damit der Ordner der virtuellen Umgebung nicht im Repository enthalten ist – das ist Best Practice.
5-5. Häufige Probleme und Lösungen
5-5-1. Mit pyenv
installiertes Python wird nicht erkannt
Lösung:Führen Sie pyenv init
aus und wenden Sie es auf Ihre Shell an.
pyenv init
Stellen Sie auch sicher, dass die PATH
-Umgebungsvariable ordnungsgemäß gesetzt ist.
5-5-2. venv
-Virtuelle Umgebung wird nicht aktiviert
Lösung:Auf Windows müssen Sie möglicherweise die Ausführungsrichtlinie von PowerShell ändern.
Set-ExecutionPolicy Unrestricted -Scope Process
5-5-3. Kann nach pip install
nicht importieren
Lösung:Überprüfen Sie, ob die virtuelle Umgebung aktiviert ist.
which python
which pip
Falls die Ausgabe-Pfade nicht auf die virtuelle Umgebung hinweisen, aktivieren Sie sie mit source venv/bin/activate
.
5-6. Zusammenfassung
Durch die ordnungsgemäße Verwaltung von Python-Versionen und Abhängigkeiten können Sie die Entwicklungseffizienz verbessern und Umgebungsprobleme minimieren.
✅Schlüssel-Best Practices
- Erstellen Sie eine virtuelle Umgebung für jedes Projekt
- Verwalten Sie Abhängigkeiten mit
requirements.txt
oderpyproject.toml
- Verwalten Sie Entwicklungsumgebungen und Produktionsumgebungen getrennt
- In der Team-Entwicklung standardisieren Sie die Python-Version, um Umgebungsunterschiede zu eliminieren
6. FAQ (Häufig gestellte Fragen)
Das Verwalten von Python-Versionen und die Nutzung virtueller Umgebungen ist ein Bereich, der bei Neulingen und erfahrenen Nutzern oft Fragen aufwirft. Dieser Abschnitt beleuchtet häufige Fragen und liefert konkrete Antworten.
6-1. Kann ich mehrere Python-Versionen gleichzeitig verwenden?
Ja, das können Sie.pyenv
oder asdf
ermöglichen es, verschiedene Python-Versionen auf Ihrem System koexistieren zu lassen und die passende Version pro Projekt zu verwenden.
Lösung: pyenv verwenden
- Verschiedene Python-Versionen installieren
pyenv install 3.9.7
pyenv install 3.10.4
- Die Version global oder lokal (pro Projekt) festlegen
pyenv global 3.10.4 # Standard-Python für das gesamte System festlegen
pyenv local 3.9.7 # Python 3.9.7 in einem bestimmten Projektordner verwenden
✅Tipp:Die Verwendung von pyenv
ermöglicht es, mehrere Versionen zu verwalten, ohne das System-Python zu ändern.
6-2. Wie lösche ich eine virtuelle Umgebung?
Sie können einfach das Verzeichnis für die virtuelle Umgebung löschen.
Bei Verwendung von venv
rm -rf venv # macOS/Linux
rd /s /q venv # Windows
Entfernen einer Poetry-virtuellen Umgebung
poetry env remove python
✅Tipp:Selbst wenn Sie eine virtuelle Umgebung löschen, ist es einfach, sie neu zu erstellen, wenn Sie eine requirements.txt
oder pyproject.toml
haben.
6-3. Wie verwende ich eine andere Python-Version für ein bestimmtes Projekt?
Die Verwendung von pyenv
oder venv
ist der übliche Ansatz.
Mit pyenv
- Die Python-Version im Projektordner angeben
pyenv local 3.8.10
- Überprüfen
python --version
Python 3.8.10
Mit venv
- Virtuelle Umgebungen mit verschiedenen Python-Versionen für jedes Projekt erstellen
python3.8 -m venv venv38
python3.10 -m venv venv310
- Die Umgebung aktivieren, die Sie verwenden möchten
source venv38/bin/activate # Python 3.8-Umgebung
✅Tipp:pyenv
ist ideal zum Wechseln von Versionen, während venv
für die Umgebungsverwaltung pro Projekt geeignet ist.
6-4. Wie wähle ich ein Versionsverwaltungstool aus?
Kriterien | Empfohlenes Tool |
---|---|
Mehrere Python-Versionen verwalten müssen | pyenv |
Einfache virtuelle Umgebungen erstellen möchten | venv |
Eine Umgebung für Data Science/Machine Learning einrichten möchten | Anaconda |
Versionen anderer Sprachen als Python verwalten möchten | asdf |
✅Tipp:Die Auswahl des richtigen Tools für Ihren Zweck erleichtert die Umgebungsverwaltung.
6-5. Änderungen von pyenv
werden nicht widergespiegelt, wenn python --version
ausgeführt wird
Dieses Problem kann daran liegen, dass Ihre Shell nicht richtig konfiguriert ist.
Lösung
- Den Initialisierungsbefehl von
pyenv
ausführen
pyenv init
- Fügen Sie die folgenden Zeilen zu
.bashrc
oder.zshrc
hinzu (Sie können auch~/.bash_profile
verwenden)
export PATH="$HOME/.pyenv/bin:$PATH"
eval "$(pyenv init --path)"
eval "$(pyenv virtualenv-init -)"
- Die Änderungen anwenden
source ~/.bashrc # oder source ~/.zshrc
✅Tipp:Stellen Sie sicher, dass pyenv
richtig in Ihre Shell-Konfiguration integriert ist.
6-6. Welches sollte ich verwenden: venv
oder Poetry
?
Punkt | venv | Poetry |
---|---|---|
Python-Standardtool | ✅ | ❌ (separate Installation erforderlich) |
Erstellen virtueller Umgebungen | ✅ | ✅ |
Abhängigkeitsverwaltung | ❌ (manuelle Verwaltung) | ✅ (automatische Verwaltung) |
Anfängerfreundlich | ✅ | △ (etwas Lernkurve) |
Schlussfolgerung:
- Wenn Sie eine einfache virtuelle Umgebung benötigen, verwenden Sie
venv
- Wenn Sie automatische Abhängigkeitsverwaltung möchten, verwenden Sie
Poetry
✅Tipp:Poetry
hat eine etwas steile Lernkurve, ist aber langfristig nützlich.
6-7. Wie pinne ich Bibliotheken, die mit pip install
installiert wurden, an ein Projekt?
Verwenden Sie pip freeze
, um eine requirements.txt
zu erstellen.
pip freeze > requirements.txt
Dann, um in einer anderen Umgebung zu installieren, verwenden Sie den folgenden Befehl.
pip install -r requirements.txt
✅Tipp:Die Verwendung von pip freeze
hilft, die Reproduzierbarkeit der Umgebung zu gewährleisten.
6-8. Zusammenfassung
Dieser Abschnitt hat häufige Fragen zur Python-Versionsverwaltung und zu virtuellen Umgebungen beantwortet.
✅Schlüsselstellen
- Wenn Sie mehrere Python-Versionen verwalten müssen, verwenden Sie
pyenv
- Für virtuelle Umgebungen pro Projekt verwenden Sie
venv
oderPoetry
- Um Abhängigkeiten zu pinnen, verwenden Sie
requirements.txt
oderpyproject.toml
- Unter Windows verwenden Sie
pyenv-win
und überprüfen Sie Ihre Umgebungsvariableneinstellungen
Dies sollte Ihr Verständnis der Python-Versionsverwaltung vertiefen und Ihnen helfen, Entwicklungsumgebungen reibungsloser einzurichten.