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

Почему требуется зацикливание?

При работе со списками могут возникнуть ситуации, когда вам нужно будет выполнить одну и ту же операцию с каждой записью в списке.

Например, вы можете взять среднее значение всех записей в списке. Аналогичным образом, что, если вы сохранили блоги в списке и хотите получить их заголовки?

У всех этих сценариев одна и та же проблема: они включают повторение. Чтобы решить эти проблемы, вы можете просто использовать циклы со списками в Python.

Давайте посмотрим, как циклы упрощают выполнение операций с несколькими элементами в списке на примере.

Понимание циклов со списками на примере

Предположим, вы хотите распечатать список американских пловцов года с 2016 по 2019 год (в 2020 году никто не был награжден из-за COVID-19). Без циклов вам придется извлекать каждое имя по одному из списка. Однако у этого метода есть две основные проблемы:

  1. Если вы работаете с длинным списком, печать каждого имени требует повторения и занимает много времени.
  2. Изменение кода для каждого экземпляра требует значительных усилий.

Связанный: Как использовать цикл while в Python

К счастью, цикл for может эффективно решить обе эти проблемы. Рассмотрим следующий код:


пловцы = ['фелпс', 'платье', 'Kalisz', 'платье']
для пловец в пловцы:
печать (пловец)

Давайте разберем этот код в три этапа:

  1. Вы определяете список пловцы и сохраните в нем имена победителей.
  2. Вы определяете цикл for, извлекаете имя из списка пловцы один за другим и присвойте его переменной пловец.
  3. Вы просите Python напечатать имя, присвоенное пловец в этой конкретной итерации.

Теперь Python продолжает повторять 2nd и 3rd шаги, чтобы распечатать всех пловцов в вашем списке. Для вашего удобства вы можете прочитать это так: «Для каждого пловца в моем списке пловцов отображать имя пловца». Вот результат:

Краткий обзор петель

Тема зацикливания имеет решающее значение, поскольку это один из основных подходов к автоматизации повторяющихся задач. Например, в нашем swimmers.py файл, Python обрабатывает первую строку цикла:


для пловец в пловцы:

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


печать (пловец)

Важно понимать, что Python печатает самое актуальное значение пловец на данном этапе, что оказывается "phelps". Поскольку список состоит из нескольких значений, Python возвращается к первой строке цикла:


для пловец в пловцы:

На этот раз Python выберет следующее имя из вашего списка, «dressel», и назначит его переменной пловец. И снова Python выполнит следующий фрагмент кода:


печать (пловец)

Теперь Python печатает самое последнее значение пловец, который оказался "dressel". Точно так же Python будет повторять цикл и печатать «kalisz» и «dressel».

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

Продолжая перебирать списки, имейте в виду, что какой бы шаг вы ни определили в своем коде, он будет повторяться один раз для каждой записи списка, независимо от длины списка. Это означает, что даже если вы добавите в свой список миллиард записей, Python выполнит определенное вами действие миллиард раз.

Также следует отметить, что когда вы определяете свои циклы for, вы можете выбрать любое имя для временной переменной, назначенной каждой записи в списке. Но рекомендуется выбрать имя, которое соответствует вашему контексту для лучшей читаемости кода.

Например, вот эффективный подход к просмотру списка продуктов, птиц и действующих лиц:


для продукта в продуктах:
для птицы в птицах:
для актера в актерах:

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


swimmers = ['phelps', 'dressel', 'kalisz', 'dressel']
для пловцов в пловцах:
print (f "{swimmer.title ()}, у вас потрясающие навыки плавания!")

Этот код работает точно так же, как и предыдущий; единственная разница в том, что вы создаете сообщение для каждого пловца, называя его имена. Как и раньше, цикл снова запускается для каждого пловца и выводит инструкцию для каждого из них. Как и ожидалось, сгенерированный результат показан ниже:

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

Например, вы можете написать другой оператор печати в приведенном выше примере.


swimmers = ['phelps', 'dressel', 'kalisz', 'dressel']
для пловцов в пловцах:
print (f "{swimmer.title ()}, у вас потрясающие навыки плавания!")
print (f "С нетерпением жду встречи с вами на следующем соревновании, {swimmer.title ()}".
")

Поскольку вы использовали отступ для обоих операторов, Python выполняет каждый из них для каждой записи в списке.

После завершения цикла вы можете суммировать свой результат, а затем переходить к другим частям вашей программы. Эта часть после цикла не должна иметь отступа, поэтому она не повторяется.

Теперь вы можете легко просматривать списки

В этой статье вы узнали, зачем нужны циклы, как использовать циклы со списками и как Python обрабатывает записи в списке, когда он имеет отступ в цикле. Теперь вы можете использовать списки и циклы для написания более сложного кода и создания программ более высокого качества.

Чтобы проверить свои знания, вот простое упражнение: создайте список из 10 чисел и выведите только числа, которые делятся на пять.

Эл. адрес
Как добавить список в Python

Работаете со списками в Python? Вот что вам нужно знать об использовании функции добавления Python при работе со списками.

Читать далее

Похожие темы
  • Программирование
  • Python
Об авторе
Усман Гани (Опубликовано 2 статей)Ещё от Usman Ghani

Подпишитесь на нашу рассылку

Подпишитесь на нашу рассылку, чтобы получать технические советы, обзоры, бесплатные электронные книги и эксклюзивные предложения!

Еще один шаг…!

Пожалуйста, подтвердите свой адрес электронной почты в электронном письме, которое мы вам только что отправили.

.