Справочник от Автор24
Найди эксперта для помощи в учебе
Найти эксперта
+2

Циклы в Python

Определение 1

Циклы в Python — это операторы языка программирования Python, являющиеся операторами итерации, которые позволяют повторить код некоторое количество раз.

Введение

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

  1. Циклические структуры, в которых присутствуют циклы с предварительным условием.
  2. Циклические структуры, в которых присутствуют циклы с постусловием.

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

  1. В цикле с предварительным условием, проверка условия выполняется до исполнения команд тела цикла, а в цикле с постусловием данная проверка осуществляется после команд тела цикла.
  2. В цикле с постусловием команды тела цикла однократно исполняются в любом варианте, а в цикле с предварительным условием команды тела цикла могут вообще не исполняться.
  3. В цикле с предварительным условием исполняется проверка условия, по которому цикл можно продолжать, а в цикле с постусловием исполняется проверка условия окончания цикла.

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

  1. Цикл for.
  2. Цикл while.

Следует отметить, что цикл for является наиболее часто используемым. Циклы применяются в тех случаях, когда программисту необходимо повторить определенный набор действий многократно. Часто программисту приходится исполнить какую-нибудь операцию (или набор операций) в области данных снова и снова, и тогда используются циклы.

«Циклы в Python» 👇
Помощь эксперта по теме работы
Найти эксперта
Решение задач от ИИ за 2 минуты
Решить задачу
Найди решение своей задачи среди 1 000 000 ответов
Найти

Циклы в Python

Цикл for, как отмечалось уже выше, следует использовать в тех случаях, когда присутствует необходимость повторить какие-либо операции некоторое количество раз. Для реализации цикла удобно использовать встроенную функцию Python range. Функция range способна создать список, состоящий из «n» элементов. В Python версии 2.Х имеется другая функция, именуемая xrange, которая может считаться генератором чисел, и она менее ресурсоемкая, чем range. Проектировщики в итоге поменяли xrange на range в Python 3. Приведем пример:

print(range(5)) # ответ: range(0, 5)

В данном примере функция range получила целое число и вернула объект range. Функция range также может принимать начальное значение, конечное значение и значение шага.

Приведем еще два примера:

a = range(5, 10)

print(a) # range(5, 10)

b = list(range(1, 10, 2))

print(b) # [1, 3, 5, 7, 9]

Из первого примера следует, что пользователь может передавать начальное и конечное значение, и функция range должна вернуть числа, начиная с начального значения вплоть до (но не включая) последнего значения, но не включая его. К примеру, при запросе 5-10 возврат будет 5-9.

Из второго примера видно, как нужно применять функцию списка (list) для того, чтобы функция range смогла вернуть каждый второй элемент, между единицей и десятью. То есть, она начинает с единицы, пропускает двойку и так далее. Приведем пример, отображающий работу цикла с использованием функции range:

for number in range(5):

print(number)

Для всех чисел в диапазоне пяти вводится число. Известно, что при вызове range со значением пять, получается список из пяти элементов. То есть, при каждом прохождении через цикл, осуществляется вывод каждого из элементов. Цикл for, в примере, показанном выше, является эквивалентом такого варианта:

for number in [0, 1, 2, 3, 4]:

print(number)

Функция range просто способна сделать результат немного меньшим. Цикл for способен обходить все итераторы Python. Цикл for умеет работать со списком, но он также может осуществлять итерации со словарем:

a_dict = {«one»:1, «two»:2, «three»:3}

for key in a_dict:

print(key)

Когда пользователь применяет for в словаре, то программа осуществляет в автоматическом режиме перебор ключей.

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

i = 0

while i ∠ 10:

print(i)

i = i + 1

Цикл while представляет собой своего рода условный оператор. В приведенном примере до тех пор, пока переменная i менее единицы, следует осуществлять ее вывод на экран. Далее, в конце цикла, происходит увеличение ее значения на единицу. Если запустить выполнение этого программного кода, то он должен выдать цифры от нуля до девяти, причем каждая цифра должна располагаться в отдельной строке, после этого задача будет исполнена.

Если же просто удалить тот фрагмент, в котором увеличивается значение i, то получится бесконечный цикл. Обычно это нежелательный результат, поскольку бесконечные циклы, по сути, являются логическими ошибками, и их следует избегать.

Известен также другой метод завершения цикла, который предполагает использование встроенной функции break. Ниже приведен пример ее использования:

while i ∠ 10:

print(i)

if i == 5:

break

i += 1

В этом фрагменте кода добавлено условное выражение для проверки условия, равняется ли когда-либо переменная i числу пять. Если нет, тогда происходит разрыв цикла. Как видно из примера, когда значение достигает пяти, исполнение кода должно остановиться, даже если ранее было указано while продолжать цикл до тех пор, пока переменная не будет равна десяти.

Следует обратить также внимание на то, как увеличивается значение при помощи +=. Это очень удобный ярлык, который пользователь может использовать и в иных операциях, например, в вычитании -= и умножении *=.

Встроенная команда break также известна как инструмент управления потока. Имеется еще один оператор, именуемый continue, который главным образом применяется для пропуска итерации, или перехода к следующей итерации.

Воспользуйся нейросетью от Автор24
Не понимаешь, как писать работу?
Попробовать ИИ
Дата написания статьи: 05.04.2022
Найди решение своей задачи среди 1 000 000 ответов
Крупнейшая русскоязычная библиотека студенческих решенных задач
Все самое важное и интересное в Telegram

Все сервисы Справочника в твоем телефоне! Просто напиши Боту, что ты ищешь и он быстро найдет нужную статью, лекцию или пособие для тебя!

Перейти в Telegram Bot