Python

Python-filterfunktion

Python-filterfunktion

Filteret er en indbygget Python-funktion. Det filtrerer den angivne sekvens eller iterable gennem en funktion, der kontrollerer, at hvert element eller element i iterable er sandt eller falsk. For at sige det enkelt filtrerer filterfunktionen iterablet gennem en funktion. Den givne funktion tester hvert element i sekvensen eller iterabelt og returnerer den sande, hvis varen opfylder de givne kriterier. Som et resultat konstruerer filter () -funktionen en ny iterator. Den mest anvendte iterable er lister, tupler og ordbøger. Denne artikel beskriver kort filter-funktionen ved hjælp af eksempler.

Syntaks for filter () -funktionen

Lad os først diskutere syntaksen for filter () -funktionen. Syntaksen for filter () -funktionen er som følger:

filet (funktion, iterabel eller sekvens)

Filterfunktionen tager to parametre som argument, dvs.e., funktion og en iterabel. Funktionen kontrollerer hvert element eller element i iterabelen, uanset om det er sandt eller ej, i henhold til givne kriterier. Det andet argument kan gentages eller sekvens, der skal filtreres. Funktionen evaluerer hvert emne i iterablen på de givne kriterier. Endelig returnerer funktionen filter () den filtrerede iterator.

Lad os se eksemplerne på filter () -funktionen og implementere den i vores Python-script. Vi bruger en spyder3-editor til at oprette og køre Python-scripts.

Eksempel 1: Filtrer listen over numre

Lad os oprette listen over numre og filtrere den. I det givne eksempel vurderer list_func () hvert listeelement i en given tilstand. Hvis listeelementet er større end 5, returnerer funktionen sand og føjer elementet til filteret.

# opretter en liste med nummer
min_liste = [1,2,3,4,5,6,10,20,35,8,4,50,60]
# opretter en funktion
def list_func (listObj):
# en betinget erklæring for at kontrollere nummeret
hvis (listObj> 5):
returner sandt
andet:
returner Falsk
# bruger filterfunktionen til at filtrere iterablen gennem list_func
tal = filter (liste_func, min_liste)
# udskriver den nye iterator
for jeg i tal:
udskrive (i)

Produktion
Outputtet viser den filtrerede iterator. Den filtrerede iterator er konstrueret af alle de emner, der er større end 5.

Eksempel 2: Filtrer listen over tegn

Lad os oprette listen over tegn og anvende filterfunktionen.

# opretter en liste med nummer
my_list = ['a', 'b', 'c', 'l', 'd', 'i', 'k', 'n', 'o', 'u', 'x']
# opretter en funktion
def list_func (listObj):
word_list = ['l', 'i', 'n', 'u', 'x']
# en betinget erklæring for at kontrollere tegnet
hvis (listObj i ordliste):
returner sandt
andet:
returner Falsk
# bruger filterfunktionen til at filtrere iterablen gennem list_func
ord = filter (liste_func, min_liste)
# udskriver den nye iterator
for jeg med ord:
udskrive (i)

Produktion

Eksempler 3: Filtrer lige tal

Lad os filtrere lige numre fra den givne liste over numre ved hjælp af filterfunktionen.

# opretter en liste med nummer
min_liste = [1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16]
# opretter en funktion
def list_func (listObj):
# en betinget erklæring for at kontrollere lige nummer
hvis (listObj% 2 == 0):
returner sandt
andet:
returner Falsk
# bruger filterfunktionen til at filtrere iterablen gennem list_func
lige_numre = filter (liste_func, min_liste)
# udskriver den nye iterator
for jeg i lige_numre:
udskrive (i)

Produktion

Eksempler 4: Filtrer skudåret

Lad os filtrere skudårene fra den givne liste over år ved hjælp af filterfunktionen.

# opretter en liste med nummer
min_liste = [2010,2012,2014,2016,2018,2020,2022,2024]
# opretter en funktion
def list_func (listObj):
# en betinget erklæring for at kontrollere skudåret
hvis (listObj% 4 == 0):
returner sandt
andet:
returner Falsk
# bruger filterfunktionen til at filtrere iterablen gennem list_func
leap_year = filter (liste_func, min_liste)
# udskriver den nye iterator
for jeg i spring-år:
udskrive (i)

Produktion

Outputtet viser skudår fra den givne liste over år.

Eksempler 5: Brug af lambda-funktion med filter ()

Filterfunktionen bruges mest med lambda-funktion. Lad os passere lambda-funktionen som et argument for at filtrere () -funktionen.

# opretter en liste med nummer
min_liste = [2010,2012,2014,2016,2018,2020,2022,2024]
#declaring en jævn_variabelvariabel
#even_number-variablen indeholder lige tal
# bruger lambda-funktion
lige_nummer = filter (lambda listeObj: listeObj% 2 == 0, min_liste)
print ("Listen over lige tal")
for jeg i lige_nummer:
udskrive (i)
leap_year = filter (lambda listObj: listObj% 4 == 0, my_list)
print ("Listen over skudår")
for x i spring_år:
udskrive (x)

Produktion

Konklusion

Filteret () er en Python-indbygget funktion, der bruges til at filtrere iterablen på en given funktion. Denne artikel forklarer filter () -funktionen med eksempler.

Top Oculus App Lab-spil
Hvis du er Oculus-headset-ejer, skal du være opmærksom på sideloading. Sideladning er processen med at installere ikke-butiksindhold på dit headset. S...
Top 10 spil at spille på Ubuntu
Windows-platform har været en af ​​de dominerende platforme til spil på grund af den enorme procentdel af spil, der udvikler sig i dag til indbygget a...
5 bedste arkadespil til Linux
I dag er computere seriøse maskiner, der bruges til spil. Hvis du ikke kan få den nye høje score, ved du hvad jeg mener. I dette indlæg vil du kende n...