veröffentlicht am: 10.06.2022 zuletzt aktualisiert am: 19.04.2023
In diesem Tutorial möchten wir das Konzept der Python return-Anweisung kennenlernen.
return
Eine Python-Funktion ist im Grunde nur eine Sammlung von Python-Code, der eine bestimmte Aufgabe erfüllt. Wenn wir diese Aufgabe in unseren Python-Programmen erfüllen wollen, rufen wir dafür dann gewöhnlich eine Python-Funktion auf. Oftmals rufen wir eine Python-Funktion auf, die dann ihre Aufgabe erfüllt, und fahren mit dem Programm fort. In anderen Fällen möchten wir aber, dass uns die Funktion Informationen zurückliefert.
Um das zu tun, verwenden wir die Python return-Anweisung. Wir wollen nun versuchen, diese Anweisung genauer zu verstehen.
Die Python return-Anweisung kann mehrere Werte zurückgeben und ebendiese Werte müssen nach der Anweisung durch ein Komma getrennt angegeben werden. Anhand des folgenden Beispiels können wir das besser verstehen: Sagen wir etwa: return X, Y, Z. Damit werden alle drei Werte in Form eines Python Tupels an die aufrufende Funktion zurückgegeben, die dann auf diese Werte wie auf Elemente in einem Tupel zugreifen kann.
return X, Y, Z
# Beginn der Funktion def meine_funktion(): anweisungen return [expression] # Ende der Funktion
Lass uns das anhand eines Beispiels verstehen. Versuchen wir, drei Werte zurückzugeben.
# Eine Funkiton, die drei Werte zurückgibt def MehrereWerteAufrufen(): string = "Wir geben mehrere Werte zurück!" x = 3 y = 2 return string, x, y # Die Funktion, die drei Werte zurückgibt aufrufen werte = MehrereWerteAufrufen() # Die zurückgegebenen Werte ausgeben print("Die zurückgegebenen Werte sind: ", werte)
Die Ausgabe des oben genannten Codes kann wie folgt dargestellt werden:
Lasst uns das anhand verschiedener Beispiele für die return-Anweisung besser verstehen.
In nächsten Programm zeigen wir dir eine Python-Funktion, die einen einzelnen Wert zurückgibt. Dies kann wie folgt aussehen:
def sub(x, y): # Liefert die Summe von x und y zurück return x + y def is_true(x): # Liefert den Boolean Wahrheitswert von x zurück return bool(x) # Aufrufe der Funktionen res = sub(6, 3) print("Das Resultat der sub Funktion ist {}". format(res)) res = is_true(6<5) print ("\nDas Resultat der is_true Funktion ist {}". format(res))
Wenn wir den Code nun ausführen würden, würden wir folgende Ausgabe auf der Konsole erhalten:
In dem Beispiel eben geben wir also einen einzelnen Wert zurück, indem wir eine Funktion definieren, die die Summe der beiden definierten Variablen zurückgibt und eine weitere Funktion, die prüft, ob die gegebene Bedingung wahr oder falsch ist.
Wir können mehrere Werte aus einer Funktion in Python auf viele Arten zurückgeben, z. B. mit Objekten, Tupeln, Listen und Dictionarys. Im Folgenden werden wir jede dieser Möglichkeiten anhand eines Beispiels erklären.
Ein Python-Programm, das mehrere Werte aus einer Methode mit Klasse zurückgibt. Dies kann mithilfe des folgenden Codeblocks geschehen.
## Erzeuge eine Klasse Test und initialisiere sie class Test: def __init__(self): self.str = "ObjectExample" self.x = 3 def fun(): # Diese Funktion liefert ein Objekt der Klasse Test zurück return Test() # Code, um die Methode oben zu testen t = fun() print(t.str) print (t.x)
Der Code oben produziert folgende Ausgabe:
Ein Python Tupel ist im Grunde eine durch Kommata getrennte Folge von Elementen. Sie sind unveränderlich.
Mithilfe des folgenden Codeblocks können wir mit der return-Anweisung für ein Tupel arbeiten:
# Ein Python-Programm, das mehrere Werte # aus einer Methode mithilfe eines Tupels zurückliefert # Diese Funktion liefert einen Tupel zurück def fun(): str = "MeinTupel" x = 82 return str, x # Um ein Tupel zurückzuliefern hätten wir auch (str, x) schreiben können # Code, um die Methoden oben zu testen str, x = fun() # Ordne Elemente des Tupel einzelnen Variablen zu print(str) print(x)
Die Ausgabe des Codes ist wie folgt:
im Folgenden schauen wir uns eine Python Liste an, die wie ein Array von Elementen funktioniert, die mit eckigen Klammern erstellt werden. Listen unterscheiden sich von Tupeln, da sie veränderbar sind. Wir können mit der return-Anweisung für eine Liste arbeiten, wie im folgenden Code gezeigt:
# Ein Python-Programm, das mehrere Werte aus einer Methode mithilfe einer Liste zurückgibt # Diese Funktion liefert eine Liste zurück def fun(): str = "SuperStarkeListe" x = 33 return [str, x] # Code, um die obere Methode zu testen: list = fun() print(list)
Ausgabe des Codeblocks:
Wir können mit der return-Anweisung arbeiten, indem wir ein Python Dictionary verwenden, wie im folgenden Code gezeigt:
# Ein Python-Programm, das mehrere Werte von einer Methode # mithilfe eines Dictionary zurückliefert # Diese Funktion liefert ein Dictionary zurück def fun (): d = dict() d['str'] = "MeinDictionary" d['x'] = 28 return d # Code, um die Methode oben zu testen d = fun() print(d)
Wir können auch die Ausgabe einer Funktion von einer anderen Funktion zurückgeben. Dies kann man wie folgt realisieren:
# Ein Python-Programm, um zu demonstrieren, dass # eine Funktion eine andere Funktion zurückgeben kann def create_adder(x): def adder(y): return x + y return adder add_15 = create_adder(10) print("Das Ergebnis ist: ", add_15(5)) # eine andere Funktion zurückgeben def outer(x): return x * 5 def my_func(): # Eine andere Funktion zurückgeben return outer # Die Funktion in res speichern res = my_func() print ("\nDas Ergebnis ist:", res (5))
Damit haben wir das Konzept der Python return-Anweisung erfolgreich demonstriert. Es ist wichtig zu verstehen, wie diese Anweisungen in verschiedenen Arten von benutzerdefinierten Objekten, Listen, Tupeln und Dictionaries verwendet werden können. Wenn du nur eine Möglichkeit suchst, aus deiner Funktion einen oder mehrere Werte zurückzugeben – dazu reicht die return-Anweisung aus. Zusätzlich können wir die return-Anweisung auch verwenden, wenn die Ausgabe der Funktion an eine andere Funktion weitergegeben werden kann. Falls du mehr über Python lernen willst, schau dir unseren Blog dazu an!
😩 Gelangweilt von den Udemy & YouTube-Tutorials?!
Lerne spielerisch Python und komme deiner gutbezahlten (und an der 🌴 liegenden) Traumkarriere einen Schritt weiter.
"Für Leute die gerne Python oder Java lernen wollen ist Codegree klasse. Ist nicht wie bei anderen Konkurrenten auf Videokursen aufgebaut..."
- Lennart Sparbier
100% kostenlos registrieren · keine Kreditkarte notwendig
Im Gegensatz zu der Abendschule oder der alteingesessenen Uni lernst du bei codegree die Sprachen & Pakete, die wirklich im Jobmarkt gesucht werden.
100% kostenlos registrieren · keine Zahlungsdaten notwendig