Funktionen
Mit Prozeduren können wir Codeteile abstrahieren, und damit eine Folge von Anweisungen zusammenfassen. Wenn wir die Prozeduren ausführen, werden die Anweisungen die in der entsprechenden Prozedur definiert sind ausgeführt.
Bevor wir Funktionen einführen, sollten wir uns nochmals an den Unterschied zwischen Anweisungen und Ausdrücken zurückerinnern. Falls Sie hier nicht mehr sicher sind, schauen Sie sich doch nochmals die entsprechende Theorieeinheit an. Eine Anweisung führen wir aus, um damit Python anzuweisen etwas zu machen, wie zum Beispiel etwas auf dem Bildschirm auszugeben, ein Stück Code mehrmals auszuführen, etc. Ausdrücke hingegen werden benutzt um Werte zu berechnen, mit denen wir weiterrechnen können.
Wenn wir eine Prozedur aufrufen, bekommen wir keinen Wert zurück. Eine Prozedur wird also nur wegen den Anweisungen benutzt, die innerhalb der Prozedur definiert sind. Funktionen erlauben uns genau wie Prozeduren Codeteile zu abstrahieren, zu benennen und mehrmals auszuführen, geben aber immer einen Wert zurück, mit dem wir weiterarbeiten können. Funktionen werden also benutzt um Code innerhalb von Ausdrücken zu abstrahieren.
Funktionen werden genau wie Prozeduren definiert. Das einzige was neu hinzukommt, ist das Schlüsselwort return
welches uns erlaubt einen Wert zurückzugeben. Wie das genau
funktioniert wird in folgendem Video erklärt:
Auch hier empfehlen wir Ihnen wie immer, das im Video gelernte direkt umzusetzen und selber mit zu experimentieren.
Experimente
- Fügen Sie wie im Video gezeigt ein zweite
return
-Anweisung zur Methode hinzu. Schreiben Sie dann zweiprint
-Anweisungen, eine die ausgegeben wird, die andere soll aber nie erreicht und somit auch nicht ausgegeben werden. - Schreiben Sie eine Funktion
max
welche zwei Zahlen als Parameter übergeben bekommt und dann die grössere der beiden Zahlen an den Aufrufer zurück gibt. Verwenden Sie dazu eineif
-Anweisung mit zweireturn
-Anweisungen, jedoch keine zusätzlichen Variablen. - Schreiben Sie eine Funktion
max3
welche das Maximum dreier Zahlen zurück gibt. Sie können für die Implementation Ihre Funktionmax
verwenden.
Fragen und Kommentare
Haben Sie Fragen oder Kommentare zu diesem Artikel? Nutzen Sie das Forum und helfen Sie sich und Ihren Mitstudierenden dieses Thema besser zu verstehen.