Ich habe eine while loop
in einer Funktion geschrieben, weiß aber nicht, wie ich sie stoppen kann. Wenn es seinen Endzustand nicht erreicht, bleibt die Schleife für immer bestehen. Wie kann ich es stoppen?
füge deinen Code einfach richtig ein:
%Vor% Sie müssen verstehen, dass die Anweisung break
in Ihrem Beispiel die Endlosschleife beendet, die Sie mit while True
erstellt haben. Wenn also die Abbruchbedingung True ist, wird das Programm die Endlosschleife verlassen und mit dem nächsten eingerückten Block fortfahren. Da in Ihrem Code kein nachfolgender Block vorhanden ist, endet die Funktion und gibt nichts zurück. Also habe ich Ihren Code korrigiert, indem ich die break
-Anweisung durch eine return
-Anweisung ersetzt habe.
Wenn Sie Ihrer Idee folgen, eine Endlosschleife zu verwenden, ist dies der beste Weg, sie zu schreiben:
%Vor% Der Operator is
in Python tut wahrscheinlich nicht, was Sie erwarten. Statt dessen:
Ich würde es so schreiben:
%Vor% Der Operator is
testet die Objektidentität, was etwas ganz anderes ist als die Gleichheit.
Tags und Links python while-loop