Module in Python nutzen
In den letzten Kapiteln haben wir fleißig Funktionen erstellt.
Wir könnten durch „Copy-and-paste“ diese einfach immer wieder in neue Projekte einfügen. Dagegen sprechen mehrere Dinge. Unser Code wird unnötig aufgebläht, da wir in jeder Programmdatei (und ein Programm kann ja aus mehreren Dateien durchaus bestehen) den Code integrieren müssten und Fehler sich so fleißig „vermehren“ und die Beseitigung dementsprechend aufwendig wird. Das beste Argument ist, dass es eine sehr viel einfachere Vorgehensweise gibt.
Jetzt wäre es doch sehr praktisch alle unsere Funktionen in einer Datei zu haben, dir wir immer wieder in unseren Projekten verwenden. Das geht in Python sehr einfach. Man spricht in Python von Modulen. Schauen wir uns die Verwendung von Modulen an, dann sind die Vorteile schnell griffig und verständlich.
Dazu gibt es den import
-Befehl. Wichtig dabei ist, dass beide Dateien im selben Verzeichnis sich befinden. Erstellen wir als Erstes unsere Funktionssammlung in der Datei „fktsammlung.py“. In unserer Sammlung von Funktionen haben wir 2 Beispielfunktionen, von denen wir annehmen, dass wir diese immer wieder und in verschiedenen Projekten benötigen. Als Erstes die Funktion, die wir im letzten Kapitel als Beispiel für Rückgabewerte erstellt haben und eine Funktion zur Begrüßung.
Die Funktion aus dem letzten Kapitel:
def bspfunktionfuerrueckgabe(eingabewert):
rueckgabewert = eingabewert * 2
return rueckgabewert
Und unsere Funktion zur Begrüßung (da gibt es ein Kartenspiel, das diese Begrüßung verwendet).
def bspfunktionfuerrueckgabe(eingabewert):
rueckgabewert = eingabewert * 2
return rueckgabewert
def hallomeister():
print("Hallo Herr und Meister")
Diese beiden Funktionen speichern wir in der Datei „fktsammlung.py“. Würden wir das Python-Programm ablaufen lassen, würde absolut nichts passieren, da zwar die Funktionen definiert sind, diese aber nicht aufgerufen werden. Dies wollen wir ja aus einer anderen Programmdatei machen.
Unsere Datei, die unsere Funktionssammlung verwendet, muss sich im selben Verzeichnis wie unsere Datei „fktsammlung.py“ befinden.
Im ersten Schritt werden wir in der neuen Datei „beispieleinsatzmodule.py“ die Funktionssammlung importieren. Hier ist wichtig, dass der Dateinamen ohne Schreibfehler und ohne die Endung „.py“ eingetragen wird!
import fktsammlung
Jetzt könnte man natürlich auf die Idee kommen, einfach in unseren neuen Dateien die Funktion hallomeister
aufrufen. Das würde eine Fehlermeldung ergeben. Wir müssen auch das Modul angeben!
Diese Angabe erfolgt über die Verknüpfung mit dem Punkt:
import fktsammlung
fktsammlung.hallomeister()
Die Verwendung von Übergabe- und Rückgabewerten erfolgt wie gewohnt. Nur der Verweis auf das Modul mit der Punktverknüpfung bleibt. So ist auch immer klar, woher eine Funktion stammt, falls man doch noch Änderungen oder Erweiterungen in seiner universellen Funktionssammlung benötigt.
import fktsammlung
fktsammlung.hallomeister()
ergebnisausfunktion = fktsammlung.bspfunktionfuerrueckgabe(2)
print(ergebnisausfunktion)
Das war der Einsatz von Modulen bei Python.