Ако сте използвали масиви в други езици за програмиране, можете да намерите нещо подобно под формата на списъци в Python. Единствената разлика е, че списъците на Python идват с допълнителна полза - динамичен размер. Подобно на масиви, можете да ги използвате, за да съхранявате повече от един елемент.

Защо се изисква цикъл?

Докато работите със списъци, ще има моменти, когато ще трябва да извършите една и съща операция срещу всеки запис в списъка.

Например, може да искате да вземете средното за всички записи в списък. В подобна бележка, какво, ако сте съхранили блогове в списък и искате да извлечете заглавието им?

Всички тези сценарии имат един и същ проблем: те включват повторение. За да се справите с тези опасения, можете просто да използвате цикли със списъци в Python.

Нека да видим как циклите улесняват извършването на операции срещу множество елементи в списък с пример.

Разбиране на цикли със списъци чрез пример

Да предположим, че искате да отпечатате списък на американските плувци на годината от 2016 до 2019 г. (никой не е награден през 2020 г. поради COVID-19). Без цикли ще трябва да извлечете всяко име едно по едно от списъка. Има обаче два основни проблема с този метод:

instagram viewer

  1. Отпечатването на всяко име се повтаря и отнема много време, когато работите с дълъг списък.
  2. Промяната на кода за всеки екземпляр изисква значителни усилия.

Свързани: Как да използвам цикъла while в Python

За щастие цикълът for може да се справи ефективно с тези два проблема. Обмислете следния код:


плувци = ["фелпс", "дрессел", "калис", "дрессел"]
за плувец в плувци:
печат (плувец)

Нека разчленим този код в три стъпки:

  1. Вие определяте списък плувци и съхранявайте имената на победителите в него.
  2. Определяте цикъл for, изваждате име от списъка плувци един по един и го присвоявайте на променливата плувец.
  3. Искате от Python да отпечата име, на което е присвоено плувец в тази специфична итерация.

Сега Python продължава да повтаря 2nd и 3rd стъпки за отпечатване на всички плувци във вашия списък. За ваше улеснение можете да го прочетете така: „За всеки плувец в моя списък с плувци показвайте името на плувеца.“ Ето резултата:

Кратък поглед към цикли

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


за плувец в плувци:

Тук казвате на Python да вземе първата стойност от вашия списък, плувци. След това го присвоява на вашата дефинирана променлива плувец. Тъй като първата стойност е „фелпс“, за нея се прилага следното твърдение:


печат (плувец)

Важно е да се разбере, че Python отпечатва най-актуалната стойност на плувец на този етап, което се случва да бъде „фелпс“. Тъй като списъкът се състои от множество стойности, Python се връща към първия ред на цикъла:


за плувец в плувци:

Този път Python ще извлече следващото име от вашия списък, ‘dressel’ и ще го присвои на променливата плувец. Отново, Python ще изпълни следната част от кода:


печат (плувец)

Сега Python отпечатва най-актуалната стойност на плувец, което се случва да бъде „dressel“. По подобен начин Python ще повтори цикъла и ще отпечата „kalisz“ и „dressel“.

След като отпечата последната стойност, Python отново преминава към първия ред на цикъла и тъй като няма по-нататъшен запис, той ще премине към следващия ред. В тази програма няма нищо след цикъла for, така че завършва.

Докато продължавате да обикаляте списъци, имайте предвид, че каквато и стъпка да определите в кода си, тя ще бъде повторена веднъж за всеки запис в списъка, независимо от дължината на списъка. Това означава, че дори ако добавите милиард записи към вашия списък, Python ще извърши дефинираното от вас действие милиард пъти.

Друго нещо, което трябва да се отбележи е, че когато дефинирате циклите си за, можете да изберете произволно име за временната променлива, присвоена на всеки запис в списъка. Препоръчително е да изберете име, което отговаря на вашия контекст, за по-добра четливост на кода.

Например, тук е ефективен подход за прелистване на списък с продукти, птици и участници:


за продукт в продукти:
за птица при птици:
за актьор в актьори:

Сега, когато сте получили основно схващане за цикъл for, вие манипулирате всеки елемент от вашия списък. Връщайки се към примера на плувеца, можете да дадете комплименти на всеки плувец за техните умения, като напишете следния код:


плувци = ['phelps', 'dressel', 'kalisz', 'dressel']
за плувец при плувци:
print (f "{swimmer.title ()}, вашите умения за плуване са страхотни!")

Този код работи точно като предишния; единствената разлика е, че създавате съобщение за всеки плувец, като извиквате имената им. Както и преди, цикълът пуска отново всеки плувец и отпечатва изявление за всеки от тях. Както се очаква, генерираната продукция е показана по-долу:

Можете също да напишете множество изрази в цикъла for. Имайте предвид, че цикълът обхваща всеки отстъпен ред, който идва след плувец в плувци, и Python изпълнява всеки ред веднъж за всяка стойност в списъка. Следователно има безкрайни възможности за всички записи в списъка.

Например можете да напишете друго изявление за печат в горния пример.


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

Тъй като сте използвали отстъп за двата израза, Python изпълнява всеки от тях за всеки запис в списъка.

След като завършите цикъла, можете да обобщите резултата си и след това да преминете към други части на вашата програма. Тази част след цикъла не трябва да се отстъпва, така че не се повтаря.

Сега можете лесно да преглеждате списъците

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

За да проверите знанията си, ето едно просто упражнение: създайте списък с 10 числа и отпечатайте само числа, които се делят на пет.

електронна поща
Как да добавя списък в Python

Работа със списъци в Python? Ето какво трябва да знаете за използването на функцията за добавяне на Python при работа със списъци.

Прочетете Напред

Свързани теми
  • Програмиране
  • Python
За автора
Усман Гани (2 статии публикувани)Още от Усман Гани

Абонирайте се за нашия бюлетин

Присъединете се към нашия бюлетин за технически съвети, рецензии, безплатни електронни книги и ексклузивни оферти!

Още една стъпка…!

Моля, потвърдете имейл адреса си в имейла, който току-що ви изпратихме.

.