Heim >Backend-Entwicklung >Python-Tutorial >Warum gibt meine Python-Funktion nach der korrekten Ausgabe „None' aus?
Warum die Funktion nach dem beabsichtigten Ergebnis „Keine“ ausgibt
In Ihrem bereitgestellten Code-Snippet ist die Funktion kleiner dafür konzipiert, zwei Zahlen zu vergleichen und Drucken Sie das kleinere aus. Es kommt jedoch zu einem unerwarteten Ergebnis, dass „Keine“ nach der beabsichtigten Ausgabe (d. h. „2“) gedruckt wird.
Verstehen der Ursache
Dieses „Keine“ Die Ausgabe entsteht durch das Fehlen einer expliziten Return-Anweisung in der kleineren Funktion. In Python geben Funktionen implizit „None“ zurück, wenn keine Return-Anweisung angegeben ist.
Das erwartete Verhalten
Um dies zu beheben, müssen Sie das Vergleichsergebnis darin explizit zurückgeben die Funktion. Hier ist eine aktualisierte Version des Codes:
def smaller(x, y): if x > y: return y # Explicitly return the smaller value else: return x # Explicitly return the smaller value print(smaller(2, 3)) # Now, it will correctly print "2"
Mit den expliziten Rückgabewerten gibt die Funktion ordnungsgemäß die kleinere Zahl zurück und verwirft das Standardverhalten „Keine“.
Das obige ist der detaillierte Inhalt vonWarum gibt meine Python-Funktion nach der korrekten Ausgabe „None' aus?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!