Оператор выхода из цикла
Оператор выхода из цикла немедленно прекращает выполнение текущего цикла и передаёт управление первой команде после него. В большинстве языков программирования он называется break.
Обычно break помещают внутрь условного оператора. Тогда цикл работает как обычно, пока не выполнится особое условие остановки: например, пока не найден нужный элемент или не введено специальное значение. Если циклы вложены, break завершает только тот, внутри которого он записан, то есть ближайший текущий цикл.
numbers = [4, 7, 12, 5] for x in numbers: if x > 10: break print(x) print("Цикл завершён")
В примере сначала выводятся числа 4 и 7. При обработке числа 12 условие \(x > 10\) становится истинным, выполняется break, и цикл сразу заканчивается. Число 5 уже не проверяется, но команда print("Цикл завершён") после цикла выполняется.
Оператор пропуска итерации не завершает цикл: он прекращает только текущую итерацию и переходит к следующей. break прекращает весь ближайший цикл. Во вложенном цикле break также не останавливает внешние циклы.
Что произойдёт после выполнения команды break внутри цикла?
Оператор выхода удобен, когда заранее трудно записать условие окончания цикла в его заголовке. Однако чрезмерное использование break может усложнить анализ цикла: читателю приходится искать дополнительные условия остановки внутри тела.
Главное
- break немедленно завершает ближайший текущий цикл.
- После break выполняется первая команда, расположенная после цикла.
- continue пропускает одну итерацию, а break прекращает весь ближайший цикл.