Kazi ya filter

Kazi filter inachuja vipengele vya kitu kinachoweza kupeperushwa, kukiakia tu vinavyofaa kulingana na hali fulani. Katika kigezo cha kwanza hupewa kazi-ya-kukaribia, ambayo kitu kitachujwa kulingana nayo. Katika kigezo cha pili - kitu yenyewe kuchujwa.

Katika kitu husalia tu vipengele vile ambavyo kazi-ya-kukaribia itarudisha True.

Kwa matokeo yake kazi hurudisha kitu maalum kinachoweza kupeperushwa. Inaweza kubadilishwa kuwa orodha, kwa kutumia kazi list.

Mtindo

pythonfilter(kazi, kitu kuchujwa)

Mfano

Wacha kwa kuchuja orodha ya asili tupate orodha, inayojumuisha tu vipengele vilivyo sawa:

pythonlst = [2, 3, 6, 8, 15]
res = filter(lambda x: x % 2 == 0, lst)
print(list(res))

Matokeo ya utekelezaji wa kificho:

python[2, 6, 8]

Mfano

Na sasa tuchuje tu vipengele visivyo sawa :

pythonlst = [2, 3, 6, 8, 15]
res = filter(lambda x: x % 2 != 0, lst)
print(list(res))

Matokeo ya utekelezaji wa kificho:

python[3, 15]

Angalia pia

  • mtindo sort,
    unaopanga vipengele vya orodha
  • kazi sorted,
    inayorudisha orodha iliyopangwa kutoka kwa vitu vinavyoweza kupeperushwa
  • kazi map,
    inayopepetua vitu vinavyoweza kupeperushwa