Bruk av Innebygde Iteratorer
Sveip for å vise menyen
Python tilbyr flere innebygde iteratorer som lar deg behandle samlinger på uttrykksfulle og minneeffektive måter. Tre av de mest brukte er enumerate, zip og map.
enumerategjør det mulig å iterere over en sekvens samtidig som du holder oversikt over både indeksen og verdien til hvert element;ziplar deg iterere over flere sekvenser parallelt, og parer sammen elementene;- Husk at
maper en høyereordens funksjon – et konsept vi brukte tidligere for å anvende oppgaver på data. Her ser vi nærmere på dette verktøyet gjennom iteratorprotokollen. I stedet for å bare se det som en måte å behandle en liste på, ser vi det nå som et spesialisert objekt som produserer resultater ved behov, og forvandler vår forståelse avmapfra et statisk funksjonelt verktøy til en dynamisk, minneeffektiv strøm.
Disse iteratorene er uvurderlige for oppgaver som å behandle parallelle lister, transformere data og skrive konsise løkker. Som vist i videoen, kan riktig bruk av dem forenkle koden din og redusere feil, spesielt når du arbeider med store eller komplekse datasett.
123456# Using enumerate and zip to process two lists in parallel names = ["Alice", "Bob", "Charlie"] scores = [85, 92, 78] for idx, (name, score) in enumerate(zip(names, scores), start=1): print(f"{idx}. {name} scored {score}")
I denne koden parer zip(names, scores) hvert navn med tilhørende poengsum, og lager en iterator av tupler som ("Alice", 85). Ved å bruke enumerate får vi en teller som starter på 1, slik at hver iterasjon gir indeks, navn og poengsum. Løkken skriver ut hver students navn og poengsum, med posisjonen i listen foran. Denne tilnærmingen er både konsis og lettlest, og viser hvordan innebygde iteratorer effektiviserer arbeidet med flere sekvenser.
Takk for tilbakemeldingene dine!
Spør AI
Spør AI
Spør om hva du vil, eller prøv ett av de foreslåtte spørsmålene for å starte chatten vår