Filter-funksjon for å filtrere objekter i Python
La oss nå studere funksjonen filter.
Den lar deg filtrere elementer i lister
og andre itererbare objekter etter et eller annet
vilkår. Den tar en funksjon som første parameter,
som angir betingelsen for sjekken.
I den andre parameteren angir man listen
hvis elementer skal filtreres.
Hvis funksjonen returnerer True, så
forblir elementet i den nye listen. Hvis
den returnerer False, vil ikke elementet
komme med i listen.
La oss si at vi har en liste:
lst = [1, 2, 3, 4, 5, 6]
La oss bare beholde partallene i den.
For å gjøre dette, ved hjelp av en lambda-funksjon, lar vi oss
skrive at tallet som sendes til dens parameter
skal være delelig med 2 uten rest:
res = filter(lambda num: num % 2 == 0, lst)
print(list(res))
Etter kjøring av koden returneres en ny liste:
[2, 4, 6]
Gitt en liste med tall:
lst = [1, 2, 3, 4, 5]
Skriv kun oddetallene fra denne listen inn i en ny liste.
Gitt en liste med strenger:
lst = ['abcd', 'ab', 'c', 'de', 'bc']
Skriv kun de strengene inn i en ny liste
som har en lengde lik 2.