Python return statement: Werte in Python zurückgeben

    Avatarbild von Preet Sanghavi
    Preet Sanghavi

    veröffentlicht am: 10.06.2022
    zuletzt aktualisiert am: 19.04.2023

    Python return: So lässt du dir Werte in Python zurückgeben!

    In diesem Tutorial möchten wir das Konzept der Python return-Anweisung kennenlernen.

    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.

    Syntax des Python return-Statements

    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.

    # 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:

    Wir verwenden daher die Python return Anweisung meistens nur in Kombination mit Methoden!

    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:

    Wir können uns aber auch einzelne Werte zurückgeben lassen!

    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.

    Verschiedene Arten von Werten in Python zurückgeben

    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.

    Das Python return mit Objekten

    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:

    Du kannst das Python return statement auch für Objekte verwenden!

    Das Python return mit dem Tupel

    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:

    Du kannst das return statement auch für ein Python Tuple verwenden!

    Das Python return mit Listen

    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:

    Die Python Liste kann auch problemlos verwendet werden!

    Das Python return mit Dictionarys

    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)

    Ausgabe des Codeblocks:

    Dictionaries eignen sich auch perfekt für diesen Zweck!

    Eine Funktion in einer anderen Funktion zurückgeben

    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))

    Ausgabe des Codeblocks:

    Nested return Statements / verschachtelte return statements helfen uns bei vielen komplexen Themen!

    Zusammenfassung: Die Python return Anweisung

    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.

    TP Star TP Star TP Star TP Star TP Star

    "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

    👋 Wir warten bereits auf dich!

    Lerne das, was du wirklich brauchst.

    Im Gegensatz zu der Abendschule oder der alteingesessenen Uni lernst du bei codegree die Sprachen & Pakete, die wirklich im Jobmarkt gesucht werden.

    Logo von Python
    Logo von PyTorch
    Logo von Pandas
    Logo von Matplotlib
    Logo von Java
    Logo von NumPy
    Mehr erfahren

    100% kostenlos registrieren · keine Zahlungsdaten notwendig