Funksie filter om objekte in Python te filtreer
Laat ons nou die funksie filter bestudeer.
Dit laat toe om elemente van lyste
en ander iterable objekte volgens 'n sekere
voorwaarde te filtreer. Die eerste parameter neem dit
'n funksie wat die toetsvoorwaarde spesifiseer.
In die tweede parameter word 'n lys gespesifiseer
wie se elemente gefiltreer sal word.
As die funksie True teruggee, dan
bly die element in die nuwe lys. As
False teruggegee word, sal die element nie
in die lys ingaan nie.
Gestel ons het 'n lys:
lst = [1, 2, 3, 4, 5, 6]
Laat ons slegs die ewe getalle daarin hou.
Om dit te doen, sal ons met 'n lambda-funksie spesifiseer
dat die getal wat as parameter oorgedra word
deelbaar deur 2 moet wees sonder 'n restant:
res = filter(lambda num: num % 2 == 0, lst)
print(list(res))
Na die uitvoering van die kode sal 'n nuwe lys teruggegee word:
[2, 4, 6]
Gegee 'n lys met getalle:
lst = [1, 2, 3, 4, 5]
Skryf slegs die onewe getalle uit hierdie lys in 'n nuwe lys.
Gegee 'n lys met snare (strings):
lst = ['abcd', 'ab', 'c', 'de', 'bc']
Skryf slegs die snare in 'n nuwe lys
wie se lengte gelyk is aan 2.