Alle fag › Programmering med Python › Listeforståelse

Listeforståelse

En listeforståelse bygger en ny liste kompakt i én linje: [uttrykk for x in sekvens]. Du kan legge til en if på slutten for å filtrere hvilke elementer som tas med.

[e(x) for x in s][e(x) \text{ for } x \text{ in } s]ny liste av e(x)e(x) for hver xx i ss
[e(x) for x in s if P(x)][e(x) \text{ for } x \text{ in } s \text{ if } P(x)]bare de xx der P(x)P(x) er sann

Symboler

e(x)e(x)uttrykket som beregnes for hver xx
sssekvensen som løkkes over
P(x)P(x)filterbetingelse

Eksempel

[i**2 for i in range(4)] gir [0, 1, 4, 9].

[i for i in range(11) if i % 3 == 0] gir 4 tall: [0, 3, 6, 9].

Les listeforståelsen som en vanlig for-løkke skrevet baklengs: verdi først, så for, så ev. if.
Øv på løkker og betingelser gratis →

← break og continue · Funksjoner og return →

Del av Programmering med Python: Løkker og betingelser.