Что это такое? Циклы в Python – инструменты, упрощающие работу с кодом. В программировании все циклично и последовательно. Написание любой программы состоит из прохождения определенных этапов, задачи в которых могут повторяться. Вот чтобы не тратить время на повторяющиеся элементы и были придуманы циклы. К слову, они есть в любом языке программирования, не только в Python.
Какие бывают? В Python основных циклов всего два – «while» и «for». Первый используется тогда, когда заранее известно количество итераций, а второй – когда нужно выполнить перебор элементов. Но мало знать принципы работы циклов, в работе необходимы еще и операторы, которые делают «while» и «for» бесконечными или вложенными, прерывают их или меняют. Ниже в статье постарались объяснить все это доступным языком с примерами.
В статье рассказывается:
- Что такое циклы в языке программирования Python
- Зачем нужны циклы в Python
- 2 цикла в Python
- Примеры циклов в Python
- Выход из цикла Python или его смена
- Бесконечные и вложенные циклы в Python
-
Пройди тест и узнай, какая сфера тебе подходит:
айти, дизайн или маркетинг.Бесплатно от Geekbrains
Что такое циклы в языке программирования Python
Цикличные задачи имеют место даже в повседневной жизни. Например, различные списки продуктов, целей на день, назначенных встреч и т. д. Приходя в супермаркет, человек ориентируется на список, покупая все товары, которые в нем указаны.
В сфере программирования циклы дают возможность осуществлять повтор тех или иных действий в зависимости от соблюдения имеющегося условия. Тем самым обеспечивается выполнение многократной последовательности инструкции.
В рамках данной темы можно выделить ряд базовых понятий:
- Единоразовое выполнение — так называемая итерация.
- Тело цикла — последовательность кода, которую можно исполнить многократно.
входят в ТОП-30 с доходом
от 210 000 ₽/мес
Скачивайте и используйте уже сегодня:
Топ-30 самых востребованных и высокооплачиваемых профессий 2023
Поможет разобраться в актуальной ситуации на рынке труда
Подборка 50+ бесплатных нейросетей для упрощения работы и увеличения заработка
Только проверенные нейросети с доступом из России и свободным использованием
ТОП-100 площадок для поиска работы от GeekBrains
Список проверенных ресурсов реальных вакансий с доходом от 210 000 ₽
Используя Python, вы можете создавать вложенные циклы. В этом случае программа произведет запуск внешнего цикла и в первой его итерации перейдет во вложенный. После этого она вновь вернётся к началу внешнего и опять запустит внутренний. Эти действия будут выполняться вплоть до момента, когда последовательность не завершится или не прервется. Циклы очень полезны для выполнения задач, связанных с перебором определенного количества элементов в заданном списке.
Зачем нужны циклы в Python
Циклы в Python позволяют сделать из сложных задач более простые. С помощью них вы можете настроить поток программы так, чтобы код повторялся определенное количество раз. Иными словами, вам не придется постоянно прописывать один и тот же код. Допустим, что перед вами стоит задача вывода первых 20 натуральных чисел. Вы, конечно, можете применить оператор «print» 20 раз, но гораздо более удобный вариант — вывести их внутри цикла, который выполняет до 20 итераций.
Читайте также!
Применительно к Python можно выделить следующие плюсы использования циклов:
- Возможность перебора элементов структур данных (массивов или связанных списков).
- Возможность многократного использования кода.
- Отсутствие необходимости прописывать один и то же код несколько раз.
Эти преимущества циклов присущи и другим языкам.
2 цикла в Python
Теперь стоит понять, какие циклы существуют в Python. Выделяют две разновидности: «for» и «while». «For» чаще всего применяется в ситуациях, когда необходимо разработать программу, состоящую из множества уровней при наличии большого количества условий.
Оператор цикла | Описание |
«For» | Данный цикл применяется в том случае, если нужно выполнять тот или иной фрагмент вплоть до момента, когда будет исполнено заданное условие. Цикл «for», который иногда называют циклом с предусловием, рекомендуется применять в тех ситуациях, когда вы заранее знаете численность итераций. |
«While» | Этот цикл применяется в тех случаях, когда численность итераций заранее не известна. Блок операторов выполняется до тех пор, пока не будет выполнено условие, указанное в цикле. У него есть альтернативное название — цикл с предварительной проверкой условия. |
«do-while» | Он продолжается вплоть до момента, когда будет выполнено заданное условие. Альтернативное название — цикл с постусловием в Python. Применяется в ситуациях, при которых стоит задача как минимум однократного выполнения цикла. |
Примеры циклов в Python
Цикл «for»
Данный цикл в языке Python осуществляет поворотное выполнение сформированного кода на основе переменной или счетчика. Он применяется, только если нужно перебрать элементы заранее известное количество раз. Допустим, что у вас есть список. Сначала из него будет взят первый элемент, затем второй и т. д. При этом с каждым из этих элементов будет выполняться действие, заранее предписанное в теле «for». Приведем пример цикла в Python:
на обучение «Веб-разработчик» до 08 декабря
for [элемент] in [последовательность]:
[сделать указанное]
«For» может также включать в себя различные виды данных: цифры, слова и т. д. К примеру:
for i in 21, 25, ‘один’, ‘два’:
print(i)
После того как будет произведен запуск, на экране отобразится следующее:
21
25
один
два
Функция «range()» позволяет упростить работу. Она демонстрирует нужное число повторов последовательности. Тем самым данная функция цикла для Python конкретизирует элементы из списка «for», которые вам нужны в данный момент. В скобках вы увидите от 1 до 3 чисел:
- 1 число говорит, что следует осуществить проверку всех чисел от 0 и до него;
- 2 числа свидетельствуют о необходимости проверить все числа, которые располагаются между первым и вторым;
- 3 числа создадут список от первого до второго с шагом, который будет равен третьему.
Вы, конечно, можете написать код следующим образом:
for i in [21, 22, 23, 24, 25]:
print(i)
Однако это создаст излишние сложности. Это будет проблематично тогда, когда имеет место внушительное количество чисел. Следовательно, имеет смысл применить вышеназванный «range()»:
for i in range(21,25):
print(i)
При любом из этих вариантов вы увидите на экране следующую последовательность:
21
22
23
24
Цикл «while»
Англоязычное слово «while» можно перевести как «до тех пор, как». Данный цикл является довольно универсальным. Он может слегка напоминать условие «if». При этом код «while» выполняется неоднократно. Написание его условия осуществляется до тела цикла. Вслед за первым выполнением программа перемещается обратно к заголовку и опять повторяет те же операции.
В конечном итоге последовательность завершается в том случае, если условие цикла уже не может быть выполнено. Проще говоря, когда оно перестаёт быть истинным. Отличие этого цикла от «for» заключается в том, что разработчик не имеет информации о численности проверок.
Образец цикла «while» в Python:
while [условие истинно]:
[сделать указанное]
Рассмотрим вариант применения:
count = 0
while count < 6:
print(count)
count += 2
В этом случае переменной даётся значение 0. Далее начинается цикл, повторяемое условие которого число меньше 6. Тело цикла, как вы можете видеть, тоже включает в себя две инструкции, каждая из которых выполняет определенную задачу. Первая нужна, чтобы отобразить число на экране, а вторая — чтобы увеличить его значение на два. В итоге повторение цикла производится вплоть до момента, когда условие перестает быть истинным. На экране вы сможете увидеть такую последовательность чисел:
0
2
4
После тела цикла можно вписать «else» и блок операций, которые следует осуществить после завершения «while».
Как правило, она имеет смысл лишь в том случае, когда указана «break». Однако программа функционирует вне зависимости от отсутствия или наличия последней. Рассмотрим код:
count = 3
while count < 7:
print count, » меньше 7″
count = count + 1
else:
print count, » не меньше 7″
Переменной присвоили значение 3. Условие следующее: пока она меньше 7, следует выводить как ее, так и само выражение «меньше 7», после чего прибавлять к ней 1. Если она будет равной 7, то начнёт выполняться условие «else». В таком случае вы увидите на экране, что переменная не меньше 7. Итогом выполнения кода будет следующая запись:
3 меньше 7
4 меньше 7
5 меньше 7
6 меньше 7
7 не меньше 7
Выход из цикла Python или его смена
Чтобы произвести выход из цикла в программировании на Python применяется оператор «break». Он осуществляет досрочное завершение, обходя «else». Для чего же это нужно? К примеру, при выполнении кода была выявлена ошибка, и, следовательно, последующая работа будет безрезультативной.
while True:
name = input(‘Введите имя:’)
if name == ‘хватит’:
break
print(‘Здравствуйте’, имя)
Реализация:
Введите имя: Анатолий
Добрый день Анатолий
Введите имя: Екатерина
Добрый день Екатерина
Введите имя: хватит
Затем выполнение программы будет завершено.
Ещё одна инструкция, вносящая изменения в цикл, — «continue». При написании данного оператора внутри кода программа игнорирует все остальные инструкции до конца цикла. Далее начинается следующая итерация.
Бесконечные и вложенные циклы в Python
Бесконечные циклы
В этом случае не выполняется условие выхода. Скажем, цикл «while» является таковым в том случае, если его условие не может быть ложным. Он полезен, к примеру, для создания программы «Часы», беспрерывно демонстрирующей время.
В качестве примера рассмотрим следующий код:
Num = 4
while num < 6:
print «Добрый день»
Как вы можете заметить, переменная всегда будет являться числом 4, так как не прописано ее повышение. По этой причине на экране будет отображаться лишь «Добрый день».
Во многих случаях цикл не должен быть бесконечным, так как это является одним из факторов нестабильности при работе программы. Для его завершения следует использовать комбинацию клавиш: «CTRL + C». Однако есть программы, которые вообще не подразумевают возможность выхода. К примеру, операционные системы, прошивки микроконтроллеров и т. д.
Читайте также!
Вложенные циклы
Речь пойдет о вложенных «for» и «while». Рассмотрим несколько вариантов применения таких циклов. Их на постоянной основе применяют в процессе обработки двухмерных списков.
Обратите внимание на пример создания двумерного списка и вывода его на экран посредством «print».
d = [[1,2,3],[4,5,6]]
for i in range(2):
for j in range(3):
print(d[i][j])
После использования одного «break» в Python произойдёт выход лишь из одного цикла. Ниже вы можете посмотреть на условие, которое позволяет выйти сразу из двух.
toExit = False
while True:
while True:
toExit = doSomething()
if toExit:
break
if toExit:
break
Это называется циклом в цикле. Причем они оба являются бесконечными. После того как функция «doSomething» вернет «True», выполнение кода прекратится. Затем друг за другом активируются «break» в каждом из циклов.
Чаще всего происходит последовательное выполнение команд. Как раз по этой причине, если нужно выполнить тело кода не один раз, применяются рассмотренные выше методы.
Теперь вы знаете, как работают циклы в Python. С их помощью вы сможете упростить повторение, а также сделать его более логичным.