Functions
Syntax

Das Konzept einer Funktion ist eines der wichtigsten in der Mathematik. Eine übliche Verwendung von Funktionen in Computersprachen ist die Implementierung mathematischer Funktionen. Eine solche Funktion berechnet ein oder mehrere Ergebnisse, die vollständig durch die an sie übergebenen Parameter bestimmt werden.
Das ist Mathematik, aber wir sprechen über Programmierung und Python. Was ist also eine Funktion in der Programmierung? Im allgemeinsten Sinne ist eine Funktion ein Strukturierungselement in Programmiersprachen, um eine Reihe von Anweisungen zu gruppieren, damit sie in einem Programm mehr als einmal verwendet werden können. Die einzige Möglichkeit, dies ohne Funktionen zu erreichen, besteht darin, Code durch Kopieren und Anpassen an verschiedene Kontexte wiederzuverwenden, was eine schlechte Idee wäre. Redundanter Code - in diesem Fall sich wiederholender Code - sollte vermieden werden! Die Verwendung von Funktionen verbessert normalerweise die Verständlichkeit und Qualität eines Programms. Dies senkt auch die Kosten für die Entwicklung und Wartung der Software.
Funktionen sind unter verschiedenen Namen in Programmiersprachen bekannt, z. als Unterprogramme, Routinen, Prozeduren, Methoden oder Unterprogramme.
print("Das Programm startet")
print("Hallo Peter")
print("Schön dich zu sehen!")
print("Viel Spaß mit dem Programm!")
# hier stelle man sich irgendwelchen Code vor:
egal = "über dies nicht nachdenken"
ist_nicht_wichtig = "normalerweise schon"
print("Hallo Dora")
print("Schön dich zu sehen!")
print("Viel Spaß mit dem Programm!")
# irgendein Code:
wie_auch_immer = "mir auch "
x = "steht stellvertretend"
y = "stellvertretend für wichtigen Code"
print("Hallo Kevin")
print("Schön dich zu sehen!")
print("Viel Spaß mit dem Programm!")
Schauen wir uns den obigen Code genauer an:

Wir können im Code sehen, dass wir drei Personen begrüßen. Jedes Mal verwenden wir drei print-Aufrufe, die nahezu gleich sind. Nur der Name ist anders. Dies nennen wir redundanten Code. Wir wiederholen den Code dreimal. Das sollte natürlich nicht sein. Dies ist der Punkt, an dem Funktionen in Python verwendet werden können und sollten. Wir könnten im Code statt der Namen einen Platzhalter verwenden. Im folgenden ein Puzzleteil. Wir schreiben den Code nur noch einmal und ersetzen jeweils das Puzzleteil mit Namen:

Das war natürlich noch kein korrekter Python-Code. Wie dies in Python geht zeigen wir im folgenden Abschnitt.
Funktionen in Python
Der folgende Code verwendet eine Funktion. Das vorherige Puzzleteil ist jetzt ein Parameter mit dem Namen name:
def begruesse(name):
print("Hallo " + name)
print("Schön dich zu sehen!")
print("Viel Spaß mit dem Programm!")
print("Das Programm startet")
begruesse("Peter")
# hier stelle man sich irgendwelchen Code vor:
egal = "über dies nicht nachdenken"
ist_nicht_wichtig = "normalerweise schon"
begruesse("Dora")
# irgendein Code:
wie_auch_immer = "mir auch "
x = "steht stellvertretend"
y = "stellvertretend für wichtigen Code"
begruesse("Kevin")
Im vorigen Code benutzten wir eine Python-Funktion. Wir können sehen, dass eine Funktionsdefinition mit dem def-Schlüsselwort eingeleitet wird. Die allgemeine Syntax sieht folgendermaßen aus:
def Funktionsname (Parameterliste):
Anweisungen, d. h. der Funktionskörper
Die Parameterliste besteht aus keinem oder mehreren Parametern. Parameter werden als Argumente bezeichnet, wenn die Funktion aufgerufen wird. Der Funktionskörper besteht aus eingerückten Anweisungen. Der Funktionskörper wird bei jedem Aufruf der Funktion ausgeführt. Wir zeigen dies im folgenden Bild:

Buch kaufen
Buch kaufen
Buch kaufen


