Heim >Backend-Entwicklung >Python-Tutorial >Warum gibt meine Python-Funktion „None' anstelle der erwarteten Ausgabe zurück?
Das Rückgabeverhalten von Python-Funktionen verstehen
Warum gibt diese einfache Python-Funktion am Ende None zurück?
def printmult(n): i = 1 while i <= 10: print(n * i, end=' ') i += 1
Erklärung:
In Python gibt jede Funktion einen Wert zurück. Wenn eine Return-Anweisung nicht explizit bereitgestellt wird, ist der Standardrückgabewert None. In diesem Fall gibt die Funktion printmult() keinen Rückgabewert an und gibt daher standardmäßig „None“ zurück.
Erwartung:
Man kann das fälschlicherweise erwarten printmult(30) wird sich anders verhalten, als es tatsächlich der Fall ist. Hier eine Klarstellung:
Empfehlung:
Um dieses Verhalten zu vermeiden, geben Sie am Ende der Funktion explizit einen gewünschten Wert zurück. Sie könnten beispielsweise das letzte Element der Multiplikationstabelle zurückgeben:
def printmult(n): i = 1 while i <= 10: print(n * i, end=' ') i += 1 return n * 10 print(printmult(30)) # Now returns 300
Das obige ist der detaillierte Inhalt vonWarum gibt meine Python-Funktion „None' anstelle der erwarteten Ausgabe zurück?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!