Функција filter за филтрирање на објекти во Python
Ајде сега да ја проучуваме функцијата filter.
Таа овозможува филтрирање на елементи од листи
и други итерабилни објекти според некој услов.
Како прв параметар прима
функција, која го дефинира условот за проверка.
Како втор параметар се наведува листата,
чии елементи ќе се филтрираат.
Ако функцијата враќа True, тогаш
елементот останува во новата листа. Ако
се враќа False, тогаш елементот нема
да влезе во листата.
Да претпоставиме дека имаме листа:
lst = [1, 2, 3, 4, 5, 6]
Ајде да остават само парни броеви во неа.
За да го направиме ова, со употреба на ламбда-функција ќе напишеме,
дека бројот што се пренесува во нејзиниот параметар
треба да се дели со: 2 без остаток:
res = filter(lambda num: num % 2 == 0, lst)
print(list(res))
По извршувањето на кодот ќе се врати нова листа:
[2, 4, 6]
Дадена е листа со броеви:
lst = [1, 2, 3, 4, 5]
Запишете во нова листа само непарните броеви од оваа листа.
Дадена е листа со стрингови:
lst = ['abcd', 'ab', 'c', 'de', 'bc']
Запишете во нова листа само стринговите
чија должина е еднаква на 2.