Операторы break и continue
До сих пор мы рассматривали тело цикла как неделимую и неразрывную последовательность инструкций, которые полностью выполняются на каждом этапе цикла. Однако как разработчик вы можете столкнуться со следующими случаями:
- нет необходимости продолжать весь цикл; следует воздержаться от дальнейшего выполнения тела цикла и пойти дальше;
- Вам нужно начать следующую итерацию цикла, не завершая выполнение текущей.
Python предоставляет две специальные инструкции для реализации обеих этих задач. Допустим, ради точности, что их наличие в языке необязательно - опытный программист может запрограммировать любой алгоритм без этих инструкций. Такие дополнения, которые не улучшают выразительную силу языка, а только упрощают работу разработчика, иногда называют синтаксической конфетой или синтаксическим сахаром.
Вот эти две инструкции:
break
– немедленно выходит из цикла и безоговорочно завершает работу цикла; программа начинает выполнение ближайшей инструкции после тела цикла;continue
– ведет себя так, как будто программа внезапно достигла конца тела; начинается следующий ход, и выражение условия немедленно проверяется.
Оба эти слова являются ключевыми словами.
Теперь мы покажем вам два простых примера, чтобы проиллюстрировать, как работают две инструкции. Посмотрите код в редакторе. Запустите программу и проанализируйте вывод. Измените код и поэкспериментируйте.
Code
# break - exampleprint("The break instruction:")
for i in range(1, 6):
if i == 3:
break
print("Inside the loop.", i)
print("Outside the loop.")
# continue - example
print("\nThe continue instruction:")
for i in range(1, 6):
if i == 3:
continue
print("Inside the loop.", i)
print("Outside the loop.")