Циклы позволяют выполнять фрагмент кода несколько раз. Рассмотрим циклы while и for, а также операторы continue, break и else, используемые с ними.
Цикл While
Цикл while выполняет код, пока заданное условие истинно. Создадим переменную i со значением 0:
i = 0
Цикл while, выполняющийся пока i меньше 10:
while i < 10:
print(i)
Это бесконечный цикл, так как i не изменяется. Добавим инкремент i:
while i < 10:
print(i)
i += 2
Цикл выполнится 5 раз, выводя 0, 2, 4, 6, 8. Условие i <= 10 даст шесть итераций. Можно использовать другие арифметические операции, например, целочисленное деление:
i = 1000
while i > 100:
print(i)
i //= 2
Код выведет последовательность чисел, пока i не станет меньше или равно 100.
Цикл For
Цикл for итерирует по последовательности (например, строке или списке). Пример со строкой:
for j in "Hello, world!":
print(j * 2, end="")
Цикл for проходит по каждому символу строки «Hello, world!». j * 2 дублирует символ, end="" предотвращает переход на новую строку. Результат: HHeelllloo,, wwooorrlldd!!. Умножение на 3 утроит каждый символ.
Операторы в циклах: continue, break и else
Рассмотрим операторы continue, break и else, используемые в циклах for и while.
Оператор Continue
continue пропускает текущую итерацию цикла и переходит к следующей. Пример:
for j in "Hello, world!":
if j == 'o':
continue
print(j * 3, end="")
Когда j равно ‘o’, continue пропускает вывод.
Оператор Break
break полностью прерывает цикл. Пример:
for j in "Hello, world!":
if j == 'o':
break
print(j * 3, end="")
Как только встречается ‘o’, цикл прерывается.
Оператор Else в циклах
else в цикле выполняется, если цикл завершился без break. Пример:
for j in "Hello, world!":
if j == 'a':
break
print(j * 2, end="")
else:
print("\nБуквы 'a' нет в слове")
Так как ‘a’ отсутствует, break не срабатывает, и выполняется блок else. Если бы ‘a’ присутствовала, break прервал бы цикл, и блок else не выполнился бы.
Рассмотрены циклы while и for в Python, а также операторы continue, break и else для управления потоком выполнения циклов. Каждый тип цикла подходит для разных задач, а знание операторов делает код гибче и эффективнее.