Python-да объектілерді сүзгілеу үшін filter функциясы
Енді 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-ге тең жолдарды ғана жаңа тізімге жазыңыз.