return

Funktionen können auch auch etwas zurückgeben, aber was bedeutet das überhaupt?

Stell dir eine Funktion als ein Helfer vor. Wenn Du eine Funktion aufrufst, dann schickst Du den Helfer los, um eine Aufgabe zu erledigen. Bis jetzt haben wir den Helfer immer nur los geschickt und gegebenfalls in die Konsole schreiben lassen. Nun kann man aber jetzt den Helfer los schicken und auf ihn warten bis er etwas zurück bringt.

Für das "Zurückbringen" benutzen wir return

def do_stuff():
    do_something()
    return some_value

Vorher sahen unsere Funktionen in etwa so aus:

def do_stuff():
    do_something()
    print_something_to_console()

Zum Beispiel hier eine add Funktion, die zwei Werte nimmt, miteinander addiert und in die Konsole ausgibt:

def add(a, b):
    print("a + b =", a + b)

add(5, 3)
"a + b = 8"

Aber wenn wir mit dem Ergebnis von add(5, 3) weiter rechnen wollen, dann funktioniert dies nicht, weil unsere add Funktion, nicht das Ergebnis zurückgibt, sondern es lediglich in die Konsole ausgibt.

Mit return a + b innerhalb des Funktionskörpers können wir das Ergebnis von a + b, wo auch immer die Funktion aufgerufen wird, zurückgeben, um damit weiterarbeiten zu können.

Lass zum Beispiel das Ergebnis von add mal 10 nehmen:

def add(a, b):
    return a + b

x = add(5, 3) * 10

print(x)
80

Unsere add Funktion tut jetzt das Ergebnis von a + b zurückgeben, dass bedeutet, dass das add(5, 3) von der Zeile, wo wir x deklarieren, evaluiert und mit dem Ergebnis ausgetauscht wird. Sprich Python macht aus x = add(5, 3) * 10 => x = 8 * 10.

return als Exitpoint

return dient ist auch ein Exitpoint einer Funktion. Sobald unsere Funktion eine Zeile erreicht hat die "return" in sich hat, werden alle folgenden Zeilen danach nicht mehr ausgeführt:

def can_drive(age):
    if (age < 18):
        return False
    else:
        return True
    print("This line will never be executed!")

print(can_drive(15))
print(can_drive(29))
False
True

return richtig zu verwenden, können deine Skills als Programmieranfänger verzehnfachen. Also wenn du es nicht auf Anhieb alles verstanden hast, sei nicht demotiviert. Manche Dinge brauchen einfach länger zum Verstehen. Les dir dieses Kapitel nochmal in Ruhe durch oder schau Youtube Videos, die genau dieses Thema versuchen zu erklären. Vetrau mir es wird sich für dich lohnen.