Циклы в Python

FavoriteLoadingДобавить в избранное

Циклы - это фундаментальная концепция программирования, позволяющая многократно выполнять блок кода до тех пор, пока не будет достигнуто определённое условие. В языке Python существует два основных типа циклов: while и for. Рассмотрим их подробнее.

Цикл while

Цикл while выполняет блок инструкций до тех пор, пока заданное условие остаётся истинным (True). Синтаксис цикла while выглядит следующим образом:

while условие:
    инструкция1
    инструкция2
    ...

Пример:

number = 1
while number < 5:
    print(f"number = {number}")
    number += 1
print("Работа программы завершена")

В этом примере цикл while будет выполняться, пока переменная number меньше 5. В каждом проходе цикла значение переменной увеличивается на единицу, и выводится текущее значение переменной. Когда number станет равным 5, цикл завершится, и программа выведет сообщение о завершении работы.

Блок else в цикле while:

Python позволяет добавлять блок else к циклу while. Этот блок выполняется, когда условие цикла становится ложным (False).
Пример с блоком else:

number = 1
while number < 5:
    print(f"number = {number}")
    number += 1
else:
    print(f"number = {number}. Работа цикла завершена")
print("Работа программы завершена")

Здесь после завершения цикла while, когда number станет равным 5, выполнится блок else, который выведет сообщение о завершении работы цикла.
Пример, когда блок while не выполняется, но блок else выполняется:

number = 10
while number < 5:
    print(f"number = {number}")
    number += 1
else:
    print(f"number = {number}. Цикл не выполнялся")

В этом примере условие цикла while изначально ложно (number = 10), поэтому блок while не выполнится ни разу. Однако блок else всё равно выполнится, и программа выведет сообщение number = 10. Цикл не выполнялся.
Такой пример показывает, что блок else может использоваться для обработки ситуации, когда цикл while вообще не выполняется, что добавляет гибкость в написании кода.

Цикл for

Цикл for используется для итерации по последовательности элементов, таких как списки, строки или диапазоны чисел. Синтаксис цикла for выглядит следующим образом:

for переменная in последовательность:
    инструкция1
    инструкция2

Пример:

message = "Hello"
for c in message:
    print(c)

Этот цикл последовательно перебирает каждый символ строки message и выводит его на экран. Результат выполнения будет следующим:

H
e
l
l
o

Использование функции range() в цикле for

Функция range() часто используется с циклом for для генерации числовой последовательности. Например:

for n in range(4, 10):
    print(n, end=" ")

Этот код сгенерирует и выведет на экран числа от 4 до 9:

4 5 6 7 8 9

Функция range() также поддерживает шаг итерации:

for n in range(0, 10, 2):
    print(n, end=" ")

Этот код выведет только чётные числа от 0 до 8:

0 2 4 6 8

Вложенные циклы

Циклы могут быть вложенными друг в друга. Вложенные циклы часто используются для работы с многомерными данными, например, для вывода таблицы умножения:

for i in range(1, 10):
    for j in range(1, 10):
        print(i * j, end="\t")
    print()

Этот код выведет таблицу умножения от 1 до 9.

Операторы break и continue

Операторы break и continue позволяют управлять выполнением циклов.
break завершает выполнение цикла досрочно.
continue пропускает текущую итерацию и переходит к следующей.
Пример с break:

number = 0
while number < 5:
    number += 1
    if number == 3:
        break
    print(f"number = {number}")

Этот код завершит выполнение цикла, когда number станет равным 3.
Пример с continue:

for number in range(1, 6):
    if number == 3:
        continue
    print(f"number = {number}")

В этом примере цикл пропустит вывод числа 3, но продолжит выполнять остальные итерации.

Заключение

Циклы в Python - это мощный инструмент, который позволяет оптимизировать выполнение кода и автоматизировать повторяющиеся задачи. Понимание и умение работать с циклами while и for открывает широкие возможности для разработки эффективных программ.

Написать Администратору

Вы можете написать Администратору сайта.

отправить