continue

Das Stoppen einer Schleife ist großartig, aber was, wenn wir nur dieses eine Mal etwas überspringen möchten? Was, wenn wir den Rest der Schleife für diesen speziellen Wert nicht ausführen wollen, aber die Schleife soll weiterlaufen?
Dazu können wir die Anweisung continue verwenden, die die Ausführung zur nächsten Runde der Schleife fortsetzt:
numbers = [1, 5, 6, 4, 0, -4, 8, 11, 2]
even_sum = 0
for n in numbers:
    if n % 2 != 0:
        continue
    even_sum += n
    print(n)

print('Sum:', even_sum)
6
4
0
-4
8
2
Sum: 16
Dieses Programm überspringt die Ausführung für jedes n, bei dem n % 2 != 0 (n ist nicht gerade).
continue überspringt die Ausführung von allem, was danach kommt. Also wird alles vor continue weiterhin ausgeführt. Python muss die Anweisung continue erreichen, um zu wissen, dass der Rest übersprungen werden soll.

Herausforderung

Gegeben sind 10 ganze Zahlen. Das Programm soll jede Zahl ausgeben, wenn alle folgenden Bedingungen zutreffen:
  • Sie ist ungerade.
  • Sie liegt außerhalb des Bereichs [3, 7].
  • Sie liegt außerhalb des Bereichs [11, 13].
  • Sie liegt außerhalb des Bereichs [17, 23].
Input
Output
12 9 6 0 1 -1 41 28 27 17
9 1 -1 41 27
Beachten Sie, dass [l, r] den Bereich von l bis r angibt, wobei sowohl l als auch r inklusive sind.
Tipp
Sie können die Ausführung der Schleife für jeden Fall überspringen, in dem die Bedingung nicht erfüllt ist (Sie können also 4 if-Anweisungen mit continue haben und eine print-Anweisung am Ende).
 

Constraints

Time limit: 2 seconds

Memory limit: 512 MB

Output limit: 1 MB

To check your solution you need to sign in
Sign in to continue