Python TagebuchPython lernen – mein persönliches Tagebuch

Tagebuch-Eintrag #24
Funktion mit Rückgabewert

Funktionen in Python lassen mich nicht mehr los. Auch wenn ich eigentlich schon mit einem anderen Thema anfangen wollte, muss ich nochmal zurück.
Werbung/Anzeige

Immer wieder was neues. Jetzt habe ich Funktion mit Rückgabewert entdeckt. Und eigentlich wollte ich schon mit den Klassen fortfahren. Gehört es eigentlich noch zu den Grundlagen? 😉

Eigentlich ist es auch egal. Früher oder später muss ich mich mit dem Thema Funktion mit Rückgabewert auseinandersetzen.

Ich habe bisher kleine Funktionen zur Übungszwecken geschrieben wie z.B. der Lottozahlgenerator oder Mathe-Aufgabengenerator. Die alle eine Aufgabe (also Funktion) ausführen und fertig.

return – Rückgabewert in Python

Mit return – kann ein Rückgabewert von aus der Funktion heraus für das Hauptprogramm ausgegeben weiterverwendet werden. So habe ich das nach meinem Verständnis und dem bisherigen Wissenstand verstanden. Korrigiert mich gern, wenn ich hier falsch liegen sollte. Aber zunächst der Beispielcode.

Funktion ohne Rückgabewert

def summary(input_value):
    total = input_value * 2
    print("Resultat innerhalb der Funktion:", total)
summary(10) # Ausgabe des print-Befehls aus der Funktion.
Die Ausgabe im Terminal

Soweit, so normal. In diesem Fall kann ich das Ergebnis, also die Summe 20 nicht weiter im Hauptprogramm verwenden, weil die Ausgabe der komplette String aus dem print-Befehl in der Funktion ist. Die Lösung dafür ist nun der Rückgabewert mit return.

Funktion mit Rückgabewert

Der gleichen Funktion modifiziere ich mit dem return-Befehl und der Code dieser Funktion sieht nun so aus:

def summary_return(input_value):
    total = input_value * 2
    return total
result = summary_return(10)

Statt den print-Befehl in der Funktion zu schreiben, wird dieser durch den return total eingesetzt. Wichtig ist, dass nach return kein Zuweisungsoperator (=) wie bei Variablen eingefügt wird und sich noch innerhalb der Funktion befinden muss – also eingerückt sein muss. Direkt nach return folgt die Variable – in meinem Beispiel total für das Ergebnis.

Außerhalb der Funktion weise ich die Funktion (summary_return) mit dem Wert 10 der Variable result zu. Wenn ich diesen Code jetzt im Terminal starte, wird nicht ausgegeben. Weil noch kein print-Befehlt vorhanden ist.

Jetzt wird es durch den Rückgabewert return interessant. Ich kann es über print-Befehl ausgeben, z.B:

print("Ergebnis ausgeben:", result) # Ergebnis ausgeben
return – Ausgabe des Ergebnisses

Jetzt kann man viele verschiedene Dinge mit dem Rückgabewert anstellen und individuell verwenden.

result_new = result + result + result
print(result_new)
if result < result_new:
    print (result, "ist kleiner als", result_new)
elif result > result_new:
    print (result, "ist größer als", result_new)
else:
    print (result, "ist genau so groß wie", result_new)
Rückgabewert individuell verwenden

Schlussfolgerung

Ich denke, ich habe das soweit verstanden, wozu der Rückgabewert da ist und was der große Unterschied ist.

Mit return kann das Ergebnis oder der Wert der Funktion im Hauptprogramm weiter verwendet und/oder verarbeitet werden.

Ohne return kann das Ergebnis nur so ausgegeben werden, wie es von der Funktion definiert wurde. Oder anders gesagt, das Ergebnis der Funktion, wird in einer Variable gespeichert.

Mehrere Rückgabewerte

Auch wenn ich bereits eine Schlussfolgerung für mich gezogen habe und ich nun verstehe was return macht, gibt es auch die Möglichkeit mehrere Rückgabewerte zu definieren.

Aber an dieser Stelle und für diese Tagebuch-Eintrag reicht das für mich. Vielleicht schaue ich mir dieses Theme später nochmal genauer an.

Dazu empfehle ich dieses Tutorial:
https://www.python-lernen.de/rueckgabewert-funktionen.htm

# # ## ENDE Tagebuch-Eintrag #24 | Funktion mit Rückgabewert
Werbung/Anzeige
Schlagwörter im Tagebuch-Eintrag:

Kommentar schreiben




Werbung/Anzeige