break, continue и вложенные условия в цикле
Уроки курсаbreak, continue и вложенные условия в цикле
Инструкция continue: пропуск текущей итерации
continue работает иначе, чем break: она не заканчивает цикл, а лишь «перепрыгивает» через оставшиеся строки текущей итерации и сразу переходит к следующей.
В цикле for Python берёт следующий элемент из последовательности. В цикле while — возвращается к проверке условия в заголовке. Сам цикл при этом живёт и продолжает работу.
Посмотрите на простой пример:
for i in range(5):
if i == 2:
continue
print(i)
Вывод:
0 1 3 4
Когда i равно 2, Python доходит до continue и немедленно прыгает к следующей итерации — вызов print(i) на этот раз просто не выполняется. При всех остальных значениях i программа идёт своим ходом и печатает число.
Это ключевой момент: continue не влияет на то, завершится ли цикл вообще. Цикл всё равно пройдёт через range(5) от начала до конца — просто одна из итераций окажется «пустой» с точки зрения кода после continue.
Практически continue удобна, когда нужно отфильтровать часть значений прямо внутри цикла, не усложняя логику вложенными блоками. Вместо того чтобы обернуть весь полезный код в if условие:, можно инвертировать условие и поставить continue в начало тела — код станет плоским и читается сверху вниз.
