Управление выполнением циклов: break и continue

Операторы break и continue позволяют управлять выполнением циклов в Python, предоставляя способы прерывать цикл или пропускать итерации. Рассмотрим их использование более подробно.

Оператор break

Оператор break используется для немедленного завершения выполнения цикла. Когда break встречается внутри цикла, он прерывает текущую итерацию и выходит из цикла, независимо от условия, которое контролирует цикл.

Примеры использования break

Прерывание цикла for

for i in range(10):
    if i == 5:
        break
    print(i)

Вывод:

0
1
2
3
4

В этом примере цикл for завершится, как только значение i достигнет 5, благодаря оператору break.

Прерывание цикла while

count = 0
while count < 10:
    if count == 5:
        break
    print(count)
    count += 1

Вывод:

0
1
2
3
4

В этом примере цикл while завершится, когда переменная count станет равной 5.

Прерывание вложенного цикла

Оператор break прерывает только ближайший цикл, в котором он находится. Для выхода из вложенных циклов требуется использование нескольких операторов break или другие методы.

for i in range(3):
    for j in range(3):
        if i == 1 and j == 1:
            break
        print(f"i: {i}, j: {j}")

Вывод:

i: 0, j: 0
i: 0, j: 1
i: 0, j: 2
i: 1, j: 0
i: 2, j: 0
i: 2, j: 1
i: 2, j: 2

В этом примере оператор break прерывает только внутренний цикл, но внешний цикл продолжается.

Оператор continue

Оператор continue используется для пропуска оставшейся части текущей итерации цикла и перехода к следующей итерации. Он позволяет избежать выполнения определенной части кода внутри цикла, когда выполнено определенное условие.

Примеры использования continue

Пропуск итерации в цикле for

for i in range(10):
    if i % 2 == 0:
        continue
    print(i)

Вывод:

1
3
5
7
9

В этом примере оператор continue пропускает итерации цикла, когда i — четное число, и только нечетные числа печатаются.

Пропуск итерации в цикле while

count = 0
while count < 10:
    count += 1
    if count % 2 == 0:
        continue
    print(count)

Вывод:

1
3
5
7
9

В этом примере оператор continue пропускает итерации цикла, когда count — четное число, и только нечетные числа печатаются.

Пропуск итерации в вложенных циклах

for i in range(3):
    for j in range(3):
        if i == 1 and j == 1:
            continue
        print(f"i: {i}, j: {j}")

Вывод:

i: 0, j: 0
i: 0, j: 1
i: 0, j: 2
i: 1, j: 0
i: 1, j: 2
i: 2, j: 0
i: 2, j: 1
i: 2, j: 2

В этом примере оператор continue пропускает итерацию внутреннего цикла, когда i и j равны 1, и продолжает выполнение следующей итерации.

Заключение

Операторы break и continue предоставляют возможность гибко управлять выполнением циклов в Python. Оператор break позволяет завершить цикл досрочно, тогда как continue пропускает оставшуюся часть текущей итерации и переходит к следующей. Эти операторы полезны для контроля потока выполнения в циклах и помогают сделать код более эффективным и читаемым.

Last updated