Python

Python-filterfunksjon

Python-filterfunksjon

Filteret er en innebygd Python-funksjon. Den filtrerer den angitte sekvensen eller iterabelen gjennom en funksjon som sjekker at hvert element eller element i iterable er sant eller usant. For å si det enkelt, filtrerer filterfunksjonen iterabelen gjennom en funksjon. Den gitte funksjonen tester hvert element i sekvensen eller gjentar det og returnerer det sanne hvis varen oppfyller de gitte kriteriene. Som et resultat konstruerer filter () -funksjonen en ny iterator. Den mest brukte iterabelen er lister, tupler og ordbøker. Denne artikkelen beskriver kort filterfunksjonen () ved hjelp av eksempler.

Syntaks for filter () -funksjonen

La oss først diskutere syntaksen for filter () -funksjonen. Syntaksen til filter () -funksjonen er som følger:

filet (funksjon, iterabel eller sekvens)

Filterfunksjonen tar to parametere som argument, i.e., funksjon og en iterabel. Funksjonen sjekker hvert element eller element i iterabelen, enten det er sant eller ikke, i henhold til gitte kriterier. Det andre argumentet er iterabel eller sekvens som skal filtreres. Funksjonen evaluerer hvert element av iterabelen på de gitte kriteriene. Til slutt returnerer filter () -funksjonen den filtrerte iteratoren.

La oss se eksemplene på filter () -funksjonen og implementere den i Python-skriptet vårt. Vi bruker en spyder3-editor for å opprette og kjøre Python-skriptene.

Eksempel 1: Filtrer listen over tall

La oss lage listen over tall og filtrere den. I det gitte eksemplet evaluerer list_func () hvert listeelement i en gitt tilstand. Hvis listeelementet er større enn 5, returnerer funksjonen sann og legger til elementet i filteret.

#opprette en liste med nummer
min_liste = [1,2,3,4,5,6,10,20,35,8,4,50,60]
#opprette en funksjon
def list_func (listObj):
# en betinget uttalelse for å sjekke nummeret
hvis (listObj> 5):
returner True
ellers:
returner Falsk
# bruker filterfunksjonen for å filtrere den iterable gjennom list_func
tall = filter (list_func, min_liste)
#utskrift av den nye iteratoren
for jeg i tall:
skrive ut (i)

Produksjon
Utgangen viser den filtrerte iteratoren. Den filtrerte iteratoren er konstruert av alle elementene som er større enn 5.

Eksempel 2: Filtrer listen over tegn

La oss lage listen over tegn og bruke filterfunksjonen.

#opprette en liste med nummer
my_list = ['a', 'b', 'c', 'l', 'd', 'i', 'k', 'n', 'o', 'u', 'x']
#opprette en funksjon
def list_func (listObj):
word_list = ['l', 'i', 'n', 'u', 'x']
# en betinget uttalelse for å sjekke tegnet
hvis (listObj i ordliste):
returner True
ellers:
returner Falsk
# bruker filterfunksjonen for å filtrere den iterable gjennom list_func
ord = filter (list_func, min_liste)
#utskrift av den nye iteratoren
for jeg med ord:
skrive ut (i)

Produksjon

Eksempler 3: Filtrer partall

La oss filtrere partallene fra den angitte listen over tall ved hjelp av filterfunksjonen.

#opprette en liste med nummer
min_liste = [1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16]
#opprette en funksjon
def list_func (listObj):
# en betinget uttalelse for å sjekke partall
hvis (listObj% 2 == 0):
returner True
ellers:
returner Falsk
# bruker filterfunksjonen for å filtrere den iterable gjennom list_func
jevntall = filter (list_func, min_liste)
#utskrift av den nye iteratoren
for jeg i jevne tall:
skrive ut (i)

Produksjon

Eksempler 4: Filtrer skuddåret

La oss filtrere skuddårene fra den gitte listen over år ved hjelp av filterfunksjonen.

#opprette en liste med nummer
min_liste = [2010,2012,2014,2016,2018,2020,2022,2024]
#opprette en funksjon
def list_func (listObj):
# en betinget uttalelse for å sjekke skuddåret
if (listObj% 4 == 0):
returner True
ellers:
returner Falsk
# bruker filterfunksjonen for å filtrere den iterable gjennom list_func
leap_year = filter (list_func, my_list)
#utskrift av den nye iteratoren
for jeg i sprangår:
skrive ut (i)

Produksjon

Produksjonen viser skuddårene fra den gitte listen over år.

Eksempler 5: Bruk lambda-funksjon med filter ()

Filterfunksjonen brukes mest med lambda-funksjon. La oss passere lambda-funksjonen som et argument for å filtrere () -funksjonen.

#opprette en liste med nummer
min_liste = [2010,2012,2014,2016,2018,2020,2022,2024]
#declaring en jevn_nummer variabel
#even_number variabel inneholder partallene
# bruker lambda-funksjon
jevnt_nummer = filter (lambda-listeObj: listeObj% 2 == 0, min_liste)
skriv ut ("Listen over partall")
for jeg i jevnt antall:
skrive ut (i)
leap_year = filter (lambda listObj: listObj% 4 == 0, my_list)
utskrift ("Listen over skuddår")
for x i sprangår:
skriv ut (x)

Produksjon

Konklusjon

Filteret () er en innebygd Python-funksjon som brukes til å filtrere iterabelen på en gitt funksjon. Denne artikkelen forklarer filter () -funksjonen med eksempler.

Topp 10 spill å spille på Ubuntu
Windows-plattformen har vært en av de dominerende plattformene for spill på grunn av den enorme andelen spill som utvikles i dag for å støtte Windows ...
5 beste arkadespill for Linux
I dag er datamaskiner seriøse maskiner som brukes til spill. Hvis du ikke kan få den nye høye poengsummen, vil du vite hva jeg mener. I dette innlegge...
Kamp for Wesnoth 1.1. 3.6 Utvikling utgitt
Kamp for Wesnoth 1.1. 3.6 utgitt i forrige måned, er den sjette utgivelsen i 1.1. 3.x-serien, og den leverer en rekke forbedringer, spesielt til bruke...