Как применять циклы Python | Статьи SEOnews
Наиболее досконально о этом говорят на курсах Python. Здесь отметим лишь, что метод как группа событий может состоять из последующих «кирпичиков»: последовательности (sequencing) , выбора (selection) , итерации (iteration) .
Последовательность – порядок исполнения команд. На определенном шаге метода мы можем заложить принятие решения о том, какое событие обязано выполниться поначалу, какое – позже, в зависимости от наступивших критерий. Это выбор.
Итерация – повторяемость команд. Время от времени для заслуги цели посещает полезно остановиться и повторить шаг метода необходимое количество разов. Или повторить сам метод много разов. «Итерирование» традиционно реализуется через таковой тип конструкций языков программирования, как циклы. Давайте же разберемся, как сделать цикл в «Пайтон».
Как применять цикл for?
В «Пайтон» циклов поддерживается всего два: for и while, при этом 1-ый считается главным и почаще употребляется. Традиционно for используют для перебора каких-то объектов по порядку и обработки каждого из их. Объекты могут быть самыми различными: перечень, кортеж, строчка (это типы данных и групп данных в Python) . Строчка упоминается не по ошибке. На Питоне поддерживается возможность перебрать ее по буквам как массив, но о этом ниже. Вот общий синтаксис цикла for:
На любом курсе Python для начинающих и деток досконально изъясняют каждую часть данной сборки. Слева переменная, которая у нас будет значить раздельно взятый элемент перечня, а справа – заглавие самого перечня.
Цикл без помощи других берет 1-ый по порядку элемент из list_of_elems и кладет его в переменную, которая на схеме величается one_elem. Далее от условия поначалу, for переходит к так именуемому «телу цикла», где у нас Операция №1, Операция №2.
Здесь вы сможете создавать какие угодно манипуляции с one_elem. На первой итерации (другими словами первом проходе цикла) они будут использованы к первому элементу list_of_elem. Пройдя тело цикла, for ворачивается в условие и присваивает one_elem последующее по порядку значение из list_of_elems. Все повторяется поначалу, лишь применительно к новенькому элементу перечня.
Будьте внимательны, аннотации в теле цикла необходимо «отбить» клавишей Tab, чтоб отступ у их в коде был больше, чем у условия цикла, по другому код не запустится и выдаст ошибку.
Чтоб не разбивать голову над неймингом переменных в каждом цикле, которых во всяком скрипте, даже во время обучения деток «Питону», быть может много, придумайте поначалу заглавие коллекции данных, непременно во множественном числе. Переменная слева будет назваться этим же словом, но в единственном числе. Подход логичный, вносящий единообразие. Код просто читается другими людьми. Пример именования переменных благодаря чему способу: «for book in books:». Давайте попробуем цикл for Python на образце перечня плодов. Выведем заглавие каждого с поддержкою функции print() :
fruits = ["apple", "orange", "banana", "strawberry", "watermelon", "pear", "grape-fruit"]
for fruit in fruits:
print( fruit)
Итог:
Функция print() отработала для каждого элемента перечня на подходящей итерации. For устроен так, что по умолчанию останавливается, единожды перебрав весь перечень.
На «второй заход» он теснее не пойдет. Как мы теснее разговаривали, в Python есть возможность перебрать строку или слово как массив букв, которые в него входят. Нужная способность!На курсах программирования задачки на циклы «Пайтон» детям нередко предоставляют с таковым расчетом, чтоб они вспомнили о данной возможности языка.
Для образца давайте обработаем строку «Программировать весело». Обратите внимание на «синтаксический сахар». Разбираемый набор данных можнож указать не совсем лишь переменной в условии цикла. Запускаем код:
for oneChar in 'Программировать весело':
print one Char
Получаем в консоли каждую букву строчки раздельно.
Время от времени нам может пригодиться приостановить исполнение цикла до того, как он прошел все элементы перечня. В данном варианте в теле цикла, другими словами там, где у нас команды, которые необходимо применить, мы можем добавить имеющийся в «Питоне» оператор цикла break и прописать условие, что break срабатывает при достижении подходящего нам объекта.
Возьмем перечень марок каров.
cars = ["Rolls-Royce", "Aston Martin", "Bentley", "Jaguar", "Land Rover", "McLaren"]
Мы как-то давали такое задание, преподавая Python для деток онлайн. Предположим, нам необходимо выводить все наименования из перечня до марки Jaguar.
for car in cars:
print( car)
if car == "Jaguar":
break
С поддержкою If проверяем, проходит ли цикл элемент перечня «Ягуар», и ежели проходит – выходим из цикла. Остаток частей не распечатается. А что будет, ежели поменяем местами операции в теле цикла?
for car in cars:
if car == "Jaguar":
break
print( car)
Тогда выведется начало перечня, но без «Ягуара», потому что вывод выполняется опосля вычисления условия и пуска break по условию.
Также в Python существует выражение continue. С его поддержкою мы можем прервать текущую итерацию, возвратиться в начало и начать со последующего элемента перечня. Это комфортно показать на образце такого же вывода в консоль частей, входящих в перечень.
animals = ["cat", "dog", "elephant", "lion", "bear", "pigeon"]
for animal in animals:
if animal == "lion":
continue
print( animal)
С поддержкою continue и логического оператора «if» мы удачно пропускаем слово «lion». Дойдя до данной итерации, цикл останавливается, не достигая функции print() . Позже ворачивается в начало и продолжает работать далее со последующего элемента перечня.
Знакомство с for продолжим функцией range() , с поддержкою которой в теле цикла for можнож повторить подходящий блок кода столько, сколько будет нужно. К слову, по функции range() можнож просто понять, почему язык Python для деток считается наиболее обычным, чем почти все иные. Чтоб сделать в иных языках то же, что здесь делается данной примечательной функцией, требуется еще наиболее трудные и трудные для понимания сборки.
Range() по умолчанию отдаёт последовательность чисел начиная от нуля, добавляя каждый разов «1» к теснее достигнутому значению. Останавливается процесс на том числе, который указан в доводе функции range() , а точнее, до него, потому что функция останавливается за единицу до собственного предела.
for number in range( 10) :
print( number)
Для range() в функции быть может указан 2-ой параметр. Ежели в доводах два числа, то 1-ое значит: с какой числа мы начинаем инкремент (другими словами неизменное увеличение на единицу) . 2-ая цифра показывает верхний предел: когда функция обязана остановиться. Но лучше один разов узреть, как разговаривает поговорка:
for number in range( 6, 11) :
print( number)
Функция range() нередко употребляется в тандеме с циклом for для того, чтоб «заточить» его под ту или иную задачку, потому стоит сказать и о 3-ем вероятном доводе range() , желая эту тему изредка затрагивают при обучении Пайтону для деток. С его поддержкою мы можем поменять число, на которое увеличиваем каждый разов ту цифру, которой достигли на предшествующей итерации. Шаг инкремента, другими словами. По умолчанию увеличение происходит на единицу, но третьим доводом это можнож поменять:
for number in range( 1, 11, 2) :
print( number)
Видите ли, прибавляется сейчас не единица, а двойка. Ежели нам необходимо перебрать несколько комплектов данных в одно и то же время, мы можем применить вложенные циклы for. Следует речь о цикле снутри иного цикла. Внутренний цикл пройдет все свои итерации на первой же итерации наружного цикла. Когда наружный перейдет на последующий шаг – внутренний вновь перебирает все элементы собственного перечня. И так пока перечень наружного цикла не подойдет к концу.
epithets = ["healthy", "tasty", "mature", "big", "cut"]
vegetables = ["potato", "tomato", "beetroot", "cabbage", "cucumber"]
for epithet in epithets:
for vegetable in vegetables:
print (epithet, vegetable)
А вот что вышло у нас в консоли разраба:
Как применять цикл while?
На курсах Python для начинающих деток этому циклу уделяют меньше внимания. Ежели for превосходно подходит для обработки комплектов данных, то while полезнее, когда необходимо повторить некое количество разов определенный сектор кода. Поначалу можнож указать условие, при котором цикл закончится.
counter = 5
while counter < 15:
print( counter)
counter = counter + 1
Будьте осмотрительны: цикл while просто преобразуется в безграничный, что чревато логическими оплошностями в програмке. К примеру, ежели убрать финальное выражение в коде, увеличивающее число в переменной counter на 1, то цикл станет безграничным, потому что условие поначалу непрерывно будет выполняться. Так же, как в цикле for, в while вы сможете применять выражение break для выхода из него в подходящий момент.
Знакомимся с Python для детей
Ежели ваш ребенок изучает программирование, то основ циклов Python из данной статьи будет недостаточно. «Танцевать» в исследовании языка программирования начинающему стоит от решения занимательных и принципиальных задач. Что бы ребенку было занимательно создать?Во всяком случае пригодится разобраться во почти всех тонкостях языка. Это можнож сделать с поддержкою безвозмездных видеоуроков, самоучителей или на курсах программирования для деток.
Есть курсы Python для подростков и занятия для деток помладше – с поддержкою вселенной Minecraft. Во всяком случае, можнож и главно начинать знакомство с языками кодинга теснее в школьном возрасте. Учите деток программировать – это полезно и занимательно.
Статьи
Комментариев 0