Циклы являются фундаментальными элементами программирования, позволяя нам многократно выполнять блоки кода. Однако иногда нам нужен более тонкий контроль над процессом итерации. Операторы Python break
и continue
обеспечивают этот контроль, позволяя соответственно преждевременно выходить из циклов или пропускать итерации.
Содержание
Оператор break
Оператор break
немедленно завершает цикл, в котором он содержится. Выполнение возобновляется с первого оператора после блока цикла. Это особенно полезно, когда выполняется условие, требующее немедленного завершения цикла.
Пример (цикл for
):
numbers = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
for num in numbers:
if num == 5:
break # Выход из цикла, когда num равно 5
print(num)
print("Цикл завершен")
Этот код выводит числа от 1 до 4, а затем выходит из цикла, когда num
становится равным 5. Результат:
1
2
3
4
Цикл завершен
Пример (цикл while
):
count = 0
while True:
print(count)
count += 1
if count > 5:
break # Выход из цикла, когда count превышает 5
Этот код выводит числа от 0 до 5, после чего цикл завершается.
Оператор continue
Оператор continue
пропускает оставшуюся часть текущей итерации и переходит непосредственно к следующей итерации цикла. Сам цикл не завершается.
Пример (цикл for
):
numbers = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
for num in numbers:
if num % 2 == 0: # Проверка на четность числа
continue # Пропуск четных чисел
print(num) #Вывод только нечётных чисел
print("Цикл завершен")
Этот код выводит только нечетные числа, поскольку четные числа приводят к тому, что оператор continue
пропускает оператор print
. Результат:
1
3
5
7
9
Цикл завершен
Пример (цикл while
):
count = 0
while count < 10:
count += 1
if count == 5:
continue # Пропуск, когда count равно 5
print(count)
Этот код выводит числа от 1 до 10, за исключением 5.
Сравнение break
и continue
И break
, и continue
изменяют поведение цикла, но по-разному. break
полностью выходит из цикла, в то время как continue
пропускает только текущую итерацию. Выбор зависит от того, нужно ли вам полностью завершить цикл или просто обработать следующую итерацию.