Funkcja filter
Funkcja filter filtruje elementy
obiektu iterowalnego, pozostawiając tylko
pasujące do określonego warunku. W
pierwszym parametrze określana jest funkcja zwrotna,
według której będzie filtrowany obiekt. W
drugim parametrze - sam obiekt do filtracji.
W obiekcie pozostają tylko te elementy, dla
których funkcja zwrotna zwróci True.
Wynikiem działania funkcji jest
specjalny obiekt iterowalny. Można go
przekształcić na listę, korzystając z
funkcji list.
Składnia
filter(funkcja, obiekt do filtracji)
Przykład
Odfiltrujmy z oryginalnej listy elementy parzyste, tworząc nową listę składającą się tylko z nich:
lst = [2, 3, 6, 8, 15]
res = filter(lambda x: x % 2 == 0, lst)
print(list(res))
Wynik wykonania kodu:
[2, 6, 8]
Przykład
A teraz odfiltrujmy tylko elementy nieparzyste:
lst = [2, 3, 6, 8, 15]
res = filter(lambda x: x % 2 != 0, lst)
print(list(res))
Wynik wykonania kodu:
[3, 15]