Industrielle Fertigung
Industrielles Internet der Dinge | Industrielle Materialien | Gerätewartung und Reparatur | Industrielle Programmierung |
home  MfgRobots >> Industrielle Fertigung >  >> Industrial programming >> Python

Python-Pakete: Struktur, Importieren und Best Practices

Python-Pakete

Erfahren Sie, wie Sie einen wachsenden Codebase mit Python-Paketen organisieren und Ihre eigenen oder Drittanbieter-Module effizient importieren.

Video: Python-Pakete – Code organisieren

Was sind Pakete?

Genau wie wir Dateien auf der Festplatte in Ordnern gruppieren, um Übersichtlichkeit zu schaffen, verwendet Python Pakete, um verwandte Module zusammenzufassen. Ein Paket ist im Grunde ein Verzeichnis, das eine __init__.py-Datei enthält – dies signalisiert Python, den Ordner als Namespace zu behandeln.

Wenn ein Projekt wächst, hält die Zusammenfassung ähnlicher Module in einem Paket das Projekt handhabbar und selbstdokumentierend. Pakete können auch Unterpakete enthalten, was der Verschachtelung von Verzeichnissen entspricht.

Ein Beispiel für ein Spieleprojekt könnte so aussehen:

Python-Pakete: Struktur, Importieren und Best Practices

Module aus einem Paket importieren

Module werden mit der Punktnotation (.) importiert. Um start.py aus dem Paket Game/Level zu importieren, verwenden Sie:

import Game.Level.start

Wenn start.py eine Funktion select_difficulty() definiert, rufen Sie diese mit dem vollständigen Namespace auf:

Game.Level.start.select_difficulty(2)

Um die Schreibarbeit zu reduzieren, können Sie das Modul in den lokalen Namespace importieren:

from Game.Level import start

Nun kann select_difficulty wie folgt aufgerufen werden:

start.select_difficulty(2)

Für noch kürzere Importe holen Sie die Funktion direkt:

from Game.Level.start import select_difficulty

Dann rufen Sie sie einfach auf:

select_difficulty(2)

Zwar ist der Import auf Funktionsebene prägnant, kann aber zu Namenskonflikten führen, wenn verschiedene Module identisch benannte Symbole bereitstellen. Die Verwendung des vollständigen Paketpfads hält den Namespace explizit und sicherer.

Python löst Paketimporte auf, indem es die in sys.path aufgeführten Verzeichnisse durchsucht – genau wie bei regulären Modulen.


Python

  1. Python-Datentypen meistern: Praxisleitfaden
  2. Python-Operatoren meistern: Umfassender Leitfaden
  3. Python pass-Statement meistern: Praxisleitfaden
  4. Python-Funktionsargumente meistern: Positional, Keyword & Default-Parameter
  5. Python-Dictionaries meistern: Erstellung, Manipulation und fortgeschrittene Techniken
  6. Python Iteratoren meistern: Funktionsweise und Erstellung eigener Iteratoren
  7. Python Closures erklärt: Wie verschachtelte Funktionen Variablen erfassen
  8. Python datetime meistern: Praktischer Leitfaden zu Datumsangaben, Zeiten und Zeitzonen
  9. Pythons time.sleep() meistern: Best Practices, Multithreading und Praxisbeispiele
  10. Python Überblick: Hochlevel, lesbar, interaktiv & objektorientiert