Python-da ob'ektlarni filtrlash uchun filter funktsiyasi
Keling, endi filter funktsiyasini o'rganamiz.
U ro'yxatlar va boshqa iteratsiya qilinadigan ob'ektlarning
elementlarini ma'lum bir shart asosida filtrlash imkonini beradi.
Birinchi parametr sifatida tekshirish shartini belgilovchi
funktsiyani qabul qiladi. Ikkinchi parametrda filtrlanishi
kerak bo'lgan elementlar ro'yxatini ko'rsatadi.
Agar funktsiya True qaytarsa,
element yangi ro'yxatda qoladi. Agar
False qaytarilsa, element
ro'yxatga kiritilmaydi.
Bizda quyidagi ro'yxat bor deylik:
lst = [1, 2, 3, 4, 5, 6]
Keling, unda faqat juft sonlarni qoldiraylik.
Buning uchun lambda-funktsiyasidan foydalanib,
uning parametriga o'tkazilgan son
2 ga qoldiqsiz bo'linishini yozamiz:
res = filter(lambda num: num % 2 == 0, lst)
print(list(res))
Kod bajarilgandan so'ng yangi ro'yxat qaytariladi:
[2, 4, 6]
Raqamlar bilan ro'yxat berilgan:
lst = [1, 2, 3, 4, 5]
Ushbu ro'yxatdan faqat toq sonlarni yangi ro'yxatga yozing.
Satrlar bilan ro'yxat berilgan:
lst = ['abcd', 'ab', 'c', 'de', 'bc']
Uzunligi 2 ga teng bo'lgan satrlarni yangi ro'yxatga yozing.