3 Stimmen

python 3.1 boolesche Prüfung mit for-Schleife

Wie kann ich eine boolesche Prüfung in eine for-Schleife einfügen? Ich habe etwas Ähnliches versucht:

for i in range (0, someNumber) and keepGoing == True

Ich erhalte die Fehlermeldung 'bool' object is not iterable. Danke für die Hilfe.

8voto

Zeke Punkte 1884

Dies ist keine for-Schleife wie in C; was Sie hier tun, ist ein Bereichsobjekt zu erstellen und dabei über jedes Element darin zu iterieren (und es "i" zu nennen). In C können Sie während einer Iteration einer Schleife mehrere Prüfungen durchführen, aber in Python iterieren Sie über iterierbare Objekte wie Listen oder Tupel.

for i in range(0, someNumber):
    if keepGoing:
        # Code

Grundsätzlich können Sie kein Flag setzen, um die Schleife zu stoppen, da die "Schleife" das gesamte Bereichsobjekt durchläuft. Die einzige Möglichkeit, ein "Stop-Flag" hinzuzufügen, ist break aus der Schleife.

for i in range(0, someNumber):
    if not keepGoing:
        break
    else:
        # Code

oder sogar

for i in range(0, someNumber):
    if not keepGoing:
        break
    # Code

0 Stimmen

Sie möchten vielleicht Folgendes hinzufügen else: break auch dazu.

0 Stimmen

Vielen Dank für die schnelle Antwort.

0 Stimmen

@Pinsickle: Kein Problem. Wenn meine Antwort Ihr Problem gelöst hat, klicken Sie auf das große Kästchen, um sie als Antwort zu akzeptieren.

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X