Functie filter voor het filteren van objecten in Python
Laten we nu de functie filter bestuderen.
Hiermee kunnen elementen van lijsten
en andere itereerbare objecten worden gefilterd op basis van een bepaalde
voorwaarde. Als eerste parameter accepteert het een
functie die de controleconditie specificeert.
In de tweede parameter wordt de lijst opgegeven,
waarvan de elementen worden gefilterd.
Als de functie True teruggeeft, dan
blijft het element in de nieuwe lijst. Als
er False wordt teruggegeven, dan wordt het element niet
opgenomen in de lijst.
Stel dat we een lijst hebben:
lst = [1, 2, 3, 4, 5, 6]
Laten we hierin alleen de even getallen behouden.
Hiervoor specificeren we met een lambda-functie
dat het getal dat aan de parameter wordt doorgegeven
deelbaar moet zijn door 2 zonder rest:
res = filter(lambda num: num % 2 == 0, lst)
print(list(res))
Na uitvoering van de code wordt een nieuwe lijst geretourneerd:
[2, 4, 6]
Gegeven een lijst met getallen:
lst = [1, 2, 3, 4, 5]
Sla in een nieuwe lijst alleen de oneven getallen uit deze lijst op.
Gegeven een lijst met strings:
lst = ['abcd', 'ab', 'c', 'de', 'bc']
Sla in een nieuwe lijst alleen de strings op
waarvan de lengte gelijk is aan 2.