Теоретический материал
Инструкции управления циклом
После тела цикла можно написать слово else:
и после него блок операций, который будет
выполнен один раз после окончания цикла, когда проверяемое
условие станет неверно:
i = 1
while i <= 10:
print(i)
i += 1
else:
print('Цикл окончен, i =', i)
Казалось бы, никакого смысла в этом нет, ведь эту же инструкцию можно
просто написать после окончания цикла. Смысл появляется только
вместе с инструкцией break, использование которой внутри цикла
приводит к немедленному прекращению цикла, и при этом не исполняется ветка
else. Разумеется, инструкцию break осмыленно
вызывать только из инструкции if, то есть она должна выполняться
только при выполнении какого-то особенного условия.
Другая инструкция управления циклом —
continue (продолжение цикла). Если эта инструкция
встречается где-то посередине цикла, то пропускаются все оставшиеся
инструкции до конца цикла, и исполнение цикла продолжается
со следующей итерации.
Инструкции break, continue и ветка
else: можно использовать и внутри цикла for.
Тем не менее, увлечение инструкциями break и continue
не поощряется, если можно обойтись без их использования. Вот типичный пример плохого использования инструкции break.
while True:
length += 1
n //= 10
if n == 0:
break