Beim Ausführen des folgenden Codes (in Python 2.7.1 auf einem Mac mit Mac OS X 10.7)
while True:
return False
erhalte ich die folgende Fehlermeldung
SyntaxError: 'return' outside function
Ich habe sorgfältig nach fehlerhaften Tabulatoren und/oder Leerzeichen gesucht. Ich kann bestätigen, dass der Code mit dem oben genannten Fehler fehlschlägt, wenn ich die empfohlenen 4 Leerzeichen für die Einrückung verwende. Dieses Verhalten tritt auch auf, wenn die Rückgabe innerhalb anderer Kontrollanweisungen (z. B. if, for usw.) platziert wird.
Für jede Hilfe wäre ich dankbar. Vielen Dank!
Die return-Anweisung ist nur innerhalb von Funktionen sinnvoll:
def foo():
while True:
return False
Verwenden Sie in diesem Zusammenhang quit()
. Break" wird innerhalb einer Schleife erwartet, und "Return" innerhalb einer Funktion.
Um eine Schleife zu unterbrechen, verwenden Sie break
anstelle von return
.
Oder fügen Sie die Schleife oder das Kontrollkonstrukt in eine Funktion ein, denn nur Funktionen können Werte zurückgeben.