Python ရှိ အရာဝတ္ထုများစစ်ထုတ်ရန် filter လုပ်ဆောင်ချက်
ယခုမူ filter လုပ်ဆောင်ချက်ကို လေ့လာကြပါစို့။
၎င်းသည် စာရင်းများနှင့် အခြားသော ထပ်လုပ်နိုင်သော အရာဝတ္ထုများ (iterable objects) ထဲမှ အချက်အလက်များကို အခြေအနေတစ်ခုခုအရ စစ်ထုတ်နိုင်စေပါသည်။ ၎င်းသည် ပထမသော parameter အဖြစ် စစ်ဆေးရန် အခြေအနေကို သတ်မှတ်ပေးသော လုပ်ဆောင်ချက်တစ်ခုကို လက်ခံပါသည်။
ဒုတိယ parameter တွင် စစ်ထုတ်မည့် အရာဝတ္ထုများပါရှိသော စာရင်းကို သတ်မှတ်ပေးပါသည်။
လုပ်ဆောင်ချက်က True ပြန်ပေးပါက၊
ထို အရာဝတ္ထုသည် အသစ်စာရင်းထဲတွင် ကျန်ရှိနေမည်။
False ပြန်ပေးပါက၊ ထို အရာဝတ္ထုသည် စာရင်းထဲသို့
မဝင်ရောက်တော့ပါ။
ကျွန်ုပ်တို့တွင် အောက်ပါစာရင်း ရှိသည်ဆိုပါစို့:
lst = [1, 2, 3, 4, 5, 6]
၎င်းထဲမှ ဂဏန်းစုံများကိုသာ ကျန်ရှိစေရန် လုပ်ဆောင်ကြပါစို့။
ဤအတွက် lambda လုပ်ဆောင်ချက် အသုံးပြု၍ ၎င်း၏ parameter သို့ ပေးပို့သော ဂဏန်းသည်
2 ဖြင့် စားလို့ပြတ်သည်ကို (အကြွင်းမရှိ) ရေးသားပါမည်:
res = filter(lambda num: num % 2 == 0, lst)
print(list(res))
ကုဒ်အား လုပ်ဆောင်ပြီးနောက် စာရင်းအသစ်အား ရရှိပါမည်:
[2, 4, 6]
ဂဏန်းများပါသော စာရင်း ရှိပါသည်:
lst = [1, 2, 3, 4, 5]
ဤစာရင်းထဲမှ ဂဏန်းမ (တစ်စုံတစ်ရာ) များကိုသာ အသစ်သော စာရင်းတစ်ခုတွင် ရေးသွင်းပါ။
စာကြောင်းများ (strings) ပါသော စာရင်း ရှိပါသည်:
lst = ['abcd', 'ab', 'c', 'de', 'bc']
အရှည် 2 ရှိသော စာကြောင်းများကိုသာ အသစ်သော စာရင်းတစ်ခုတွင် ရေးသွင်းပါ။