Nyheter i Android, Telefoner, Prylar Och Recensioner

Hur man använder loopar med listor i Python

Om du har använt arrays i andra programmeringsspråk kan du hitta något liknande i form av listor i Python. Den enda skillnaden är att Python-listor kommer med en extra fördel – dynamisk storlek. Precis som matriser kan du använda dem för att lagra mer än ett föremål.

Varför krävs looping?

När du arbetar med listor kommer det att finnas tillfällen då du kommer att behöva utföra samma operation mot varje post i listan.

Du kanske till exempel vill ta medelvärdet av alla poster i en lista. På liknande sätt, vad händer om du har lagrat bloggar i en lista och vill hämta deras rubrik?

Alla dessa scenarier har samma problem: de involverar upprepning. För att lösa dessa problem kan du helt enkelt använda loopar med listor i Python.

Låt oss se hur loopar gör det enkelt att utföra operationer mot flera objekt i en lista med ett exempel.

Förstå loopar med listor genom ett exempel

Anta att du vill skriva ut en lista över årets amerikanska simmare från 2016 till 2019 (ingen belönades 2020 på grund av COVID-19). Utan loopar måste du hämta varje namn ett efter ett från listan. Det finns dock två stora problem med denna metod:

    Att skriva ut varje namn är repetitivt och tidskrävande när du arbetar med en lång lista. Att ändra koden för varje instans kräver avsevärd ansträngning.

Lyckligtvis kan en for-loop lösa båda dessa problem effektivt. Tänk på följande kod:


swimmers = ['phelps', 'dressel', 'kalisz', 'dressel']
for swimmer in swimmers:
print(swimmer)

Låt oss dissekera den här koden i tre steg:

    Du definierar en lista simmare och lagra namnen på vinnarna i den. Du definierar en for-loop, drar ett namn från listan simmare en efter en och tilldela den till variabeln simmare. Du ber Python att skriva ut ett namn som är tilldelat simmare i den specifika iterationen.
Relaterad  Google Pixel-telefoner kan snart aktivera timelapse-läge för astrofotografering

Nu fortsätter Python att upprepa steg 2 och 3 för att skriva ut alla simmare i din lista. För din bekvämlighet kan du läsa det så här: “För varje simmare i min lista över simmare, visa simmarens namn.” Här är utgången:

En kort blick på loopar

Ämnet looping är avgörande eftersom det är en av de viktigaste metoderna för att automatisera repetitiva uppgifter. Till exempel i vår simmare.py fil, bearbetar Python slingans första rad:


for swimmer in swimmers:

Här säger du till Python att hämta det första värdet från din lista, simmare. Därefter tilldelar den den till din definierade variabel simmare. Eftersom det första värdet är ‘phelps’ gäller följande uttalande för det:


print (swimmer)

Det är viktigt att förstå att Python skriver ut det senaste värdet av simmare i detta skede, som råkar vara “phelps”. Eftersom listan består av flera värden går Python tillbaka till den första raden i slingan:


for swimmer in swimmers:

Den här gången kommer Python att hämta nästa namn från din lista, ‘dressel’ och tilldela det till variabeln simmare. Återigen kommer Python att köra följande kodbit:


print (swimmer)

Nu skriver Python ut det senaste värdet av simmare, som råkar vara ‘dressel’. På liknande sätt kommer Python att upprepa loopen och skriva ut “kalisz” och “dressel”.

Efter att ha skrivit ut det sista värdet går Python till den första raden i slingan igen, och eftersom det inte finns någon ytterligare inmatning kommer den att flytta till nästa rad. I det här programmet finns det inget efter for-slingan, så det slutar.

När du fortsätter att gå igenom listor, kom ihåg att oavsett vilket steg du definierar i din kod, kommer det att upprepas en gång för varje listpost, oavsett listans längd. Det betyder att även om du lägger till en miljard poster till din lista, kommer Python att utföra din definierade åtgärd en miljard gånger.

Relaterad  Läckta bilder visar Nikons retroinspirerade Zfc APS-C spegellösa kamera har en flippy-out LCD

En annan sak att notera är att när du definierar dina for-loopar kan du välja vilket namn som helst för den temporära variabeln som tilldelas varje post i listan. Men det rekommenderas att välja ett namn som passar ditt sammanhang för bättre kodläsbarhet.

Här är till exempel ett effektivt sätt att gå igenom en lista med produkter, fåglar och skådespelare:


for product in products:
for bird in birds:
for actor in actors:

Nu när du har ett grundläggande grepp om för loop, manipulerar du varje punkt i din lista. Om du går tillbaka till simmarexemplet kan du ge komplimanger till varje simmare för deras färdigheter genom att skriva följande kod:


swimmers = ['phelps', 'dressel', 'kalisz', 'dressel']
for swimmer in swimmers:
print(f"{swimmer.title()}, your swimming skills are terrific!")

Denna kod fungerar exakt som den tidigare; den enda skillnaden är att du skapar ett meddelande för varje simmare genom att ropa upp deras namn. Liksom tidigare kör slingan igen varje simmare och skriver ut ett uttalande för var och en av dem. Som förväntat visas den genererade utdata nedan:

Du kan också skriva flera påståenden i for-slingan. Tänk på att slingan omfattar varje indragen rad som kommer efter simmare i simmare, och Python kör varje rad en gång för varje listvärde. Därför finns det oändliga möjligheter för alla poster i listan.

Du kan till exempel skriva en annan utskriftssats i exemplet ovan.


swimmers = ['phelps', 'dressel', 'kalisz', 'dressel']
for swimmer in swimmers:
print(f"{swimmer.title()}, your swimming skills are terrific!")
print(f"Looking forward to see your in the next competition, {swimmer.title()}.
")

Eftersom du har använt indrag för båda satserna, kör Python var och en av dem för varje post i listan.

Efter att ha slutfört loopen kan du sammanfatta din produktion och sedan flytta till andra delar av ditt program. Denna post-loop-del ska inte dras in, så den upprepas inte.

Relaterad  10 bästa iPhone 13 skärmskydd

Nu kan du enkelt gå igenom listor

I den här artikeln lärde du dig varför loopar behövs, hur man använder loopar med listor och hur Python bearbetar poster i en lista när den dras in i en loop. Du kan nu använda listor och loopar för att skriva mer komplex kod och skapa program av högre kvalitet.

För att testa dina kunskaper, här är en enkel övning: skapa en lista med 10 siffror och skriv bara ut siffror som är delbara med fem.

Om författaren

Usman Ghani (4 artiklar publicerade)

Usman är en innehållsmarknadsförare som har hjälpt flera företag med organisk tillväxt på digitala plattformar. Han gillar både programmering och skrivande, vilket gör att tekniskt skrivande är något han tycker mycket om. När han inte jobbar tycker Usman om att titta på tv-program, följa cricket och läsa om dataanalys.

Mer från Usman Ghani

Prenumerera på vårt nyhetsbrev

Gå med i vårt nyhetsbrev för tekniska tips, recensioner, free e-böcker och exklusiva erbjudanden!

Klicka här för att prenumerera

Table of Contents