Warum gibt meine Python-Funktion am Ende „None“ zurück?
Wenn in einer Python-Funktion unerwartetes Verhalten auftritt, ist es wichtig zu verstehen wie Funktionsrückgabewerte funktionieren.
Das Problem mit dem Rückgabewert
Ihr Die Verwirrung rührt daher, dass Python-Funktionen zwar immer einen Wert zurückgeben, dies jedoch nicht explizit tun, wenn keine Return-Anweisung geschrieben wird. Wenn dies auftritt, gibt die Funktion den Sonderwert „None“ zurück.
Codeanalyse
Ihr Code definiert eine Funktion „printmult“, die ein Argument „n“ und akzeptiert gibt Vielfache von „n“ von 1 bis 10 aus. Sie fügen jedoch keine Return-Anweisung ein, was zu „None“ führt. return.
Erwartetes Verhalten
Sofern nicht anders angegeben, gibt „printmult“ „None“ zurück, da es keinen expliziten Wert zurückgibt. Wenn Sie die Funktion als „print(printmult(30))“ aufrufen, werden die Ergebnisse des Funktionsaufrufs (die gedruckten Vielfachen von 30) und dann „Keine“ gedruckt.
Funktionsrückgabe verstehen
Denken Sie daran, dass Drucken und Zurücksenden unterschiedliche Aktionen sind. Beim Drucken wird die Ausgabe auf der Konsole angezeigt, während bei der Rückgabe ein Wert an den Aufrufer der Funktion zurückgegeben wird. In Ihrem Fall druckt „printmult“ nur die Vielfachen und liefert keinen aussagekräftigen Rückgabewert für „printmult(30)“.
Das obige ist der detaillierte Inhalt vonWarum gibt meine Python-Funktion „None' zurück, obwohl sie eine Ausgabe ausgibt?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!