Heim >Backend-Entwicklung >Python-Tutorial >Python-Funktionen: Return None, Return oder No Return-Anweisung – welche sollten Sie verwenden?
Python-Funktionen: Eintauchen in Return-Anweisungen
Viele Python-Programmierer stehen vor dem Dilemma, zwischen der Verwendung von return None, return oder no return-Anweisungen zu wählen überhaupt beim Schreiben von Funktionen. In diesem Artikel werden die subtilen Unterschiede zwischen diesen Ansätzen untersucht und Hinweise gegeben, wann jeder angemessen ist.
Das Funktionstrio:
Berücksichtigen Sie die folgenden drei Funktionen:
def my_func1(): print("Hello World") return None def my_func2(): print("Hello World") return def my_func3(): print("Hello World")
Auf den ersten Blick scheinen alle drei Funktionen None zurückzugeben. Bei näherer Betrachtung gibt es jedoch nuancierte Unterschiede in ihrem Verhalten.
Verwendung von „return None“:
Dies weist ausdrücklich darauf hin, dass die Funktion darauf ausgelegt ist, einen Wert zurückzugeben In diesem Fall: Keine. Dieser Wert kann anschließend an anderer Stelle im Code verwendet werden. return None wird normalerweise verwendet, wenn es einen bestimmten Rückgabewert gibt, den die Funktion bereitstellen soll.
Zum Beispiel gibt die folgende Funktion die Mutter einer Person zurück, wenn es sich um einen Menschen handelt, andernfalls None:
def get_mother(person): if is_human(person): return person.mother else: return None
Return verwenden:
Dies funktioniert ähnlich wie break-Anweisungen in Schleifen. Es dient in erster Linie dazu, die Funktionsausführung zu beenden, wobei der Rückgabewert keine Rolle spielt. Obwohl dies nicht häufig erforderlich ist, kann die Rückkehr in bestimmten Situationen nützlich sein.
Betrachten Sie dieses Beispiel, in dem wir in einer Gruppe von Gefangenen nach einem Gefangenen mit einem Messer suchen:
def find_prisoner_with_knife(prisoners): for prisoner in prisoners: if "knife" in prisoner.items: prisoner.move_to_inquisition() return # No need to check the remaining prisoners or raise an alert raise_alert()
Beachten Sie, dass die Der Rückgabewert der Funktion sollte keiner Variablen zugewiesen werden, da er nicht für die weitere Verwendung vorgesehen ist.
Verwendung von „Keine Rückgabe“. Aussage:
Dieser Ansatz gibt auch None zurück, aber er impliziert, dass die Funktion ohne einen bestimmten Rückgabewert erfolgreich abgeschlossen wurde. Es erfüllt im Wesentlichen die gleiche Rolle wie die Rückgabe in Void-Funktionen in Sprachen wie C oder Java.
def set_mother(person, mother): if is_human(person): person.mother = mother
Schlussfolgerung:
Obwohl alle drei Methoden letztendlich „None“ zurückgeben, tun sie es dienen unterschiedlichen Zwecken. return None wird verwendet, wenn ein bestimmter Rückgabewert übermittelt werden muss. return wird verwendet, um die Funktionsausführung explizit zu beenden, und die Verwendung keiner Return-Anweisung zeigt eine erfolgreich abgeschlossene Funktion ohne einen angegebenen Rückgabewert an.
Das obige ist der detaillierte Inhalt vonPython-Funktionen: Return None, Return oder No Return-Anweisung – welche sollten Sie verwenden?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!