Funkcija filter

Funkcija filter filtrira elemente iterabilnega objekta in pusti le tiste, ki ustrezajo določenemu pogoju. V prvem parametru je določena funkcija-povratni klic, po kateri bo objekt filtriran. V drugem parametru - sam objekt za filtriranje.

V objektu ostanejo le tisti elementi, za katere povratni klic vrne True.

Funkcija kot rezultat vrne poseben iterabilen objekt. Lahko ga pretvorite v seznam z uporabo funkcije list.

Sintaksa

pythonfilter(funkcija, objekt za filtriranje)

Primer

Filtrirajmo izvorni seznam, da dobimo seznam, sestavljen samo iz sodih elementov:

pythonlst = [2, 3, 6, 8, 15]
res = filter(lambda x: x % 2 == 0, lst)
print(list(res))

Rezultat izvajanja kode:

python[2, 6, 8]

Primer

Zdaj pa filtrirajmo samo lihe elemente:

pythonlst = [2, 3, 6, 8, 15]
res = filter(lambda x: x % 2 != 0, lst)
print(list(res))

Rezultat izvajanja kode:

python[3, 15]

Glejte tudi

  • metoda sort,
    ki razvrsti elemente seznama
  • funkcija sorted,
    ki vrne razvrščen seznam iz iterabilnih objektov
  • funkcija map,
    ki preleta iterabilne objekte