Stringide loendi filtreerimine Pythonis

How Filter List Strings Python



Python kasutab loendi andmetüüpi mitme teabe salvestamiseks järjestikku. See toimib nagu teiste programmeerimiskeelte numbriline massiiv. filter () meetod on Pythoni jaoks väga kasulik meetod. Ühe või mitu andmeväärtust saab filtreerida Pythonis mis tahes stringist, loendist või sõnastikust, kasutades meetodit filter (). See filtreerib andmeid mis tahes konkreetse tingimuse alusel. See salvestab andmed, kui tingimus tagastab tõese ja loobub, kui tagastab vale. Selles artiklis näidatakse erinevate näidete abil, kuidas loendi stringi andmeid Pythonis filtreerida. Selle artikli näidete testimiseks peate kasutama Python 3+.

Stringide loendi filtreerimine teise loendi abil

See näide näitab, kuidas stringi loendis olevaid andmeid saab filtreerida ilma ühtegi meetodit kasutamata. Stringide loend filtreeritakse siin teise loendi abil. Siin deklareeritakse nimega kaks loendimuutujat nimekiri 1 ja nimekiri2 . Väärtused nimekiri2 filtreeritakse väärtuste abil nimekiri 1 . Skript sobib iga väärtuse esimese sõnaga nimekiri2 väärtustega nimekiri 1 ja printige need väärtused, mida pole nimekiri 1 .







# Deklareerige kaks loendimuutujat
nimekiri 1= ['Perl', 'PHP', 'Java', 'ASP']
nimekiri2= [„JavaScript on kliendipoolne skriptikeel”,
'PHP on serveripoolne skriptikeel',
'Java on programmeerimiskeel',
'Bash on skriptikeel']

# Filtreerige teine ​​loend esimese loendi alusel
filter_andmed= [xeestxsissenimekiri2kui
kõik(jamitte sissexeestjasissenimekiri 1)]

# Printige loendi andmed enne filtrit ja pärast filtrit
printida('Esimese loendi sisu:',nimekiri 1)
printida('Teise loendi sisu:',nimekiri2)
printida('Teise loendi sisu pärast filtrit:',filter_andmed)

Väljund:



Käivitage skript. Siin, nimekiri 1 ei sisalda sõna ' Bash ’. Väljund sisaldab ainult ühte väärtust nimekiri2 see on ' Bash on skriptikeel ” .







Stringide loendi filtreerimine teise loendi ja kohandatud funktsiooni abil

See näide näitab, kuidas stringi loendit saab teise loendi ja kohandatud filtri funktsiooni abil filtreerida. Skript sisaldab kahte loendimuutujat list1 ja list2. Kohandatud filtri funktsioon saab teada mõlema loendimuutuja ühised väärtused.

# Deklareerige kaks loendimuutujat
nimekiri 1= ['90', '67', '3. 4', '55', „12”, „87”, '32']
nimekiri2= ['9', '90', '38', 'Neli. Viis', „12”, 'kakskümmend']

# Kuulutage funktsioon esimesest loendist andmete filtreerimiseks
defFiltreeri(nimekiri 1,nimekiri2):
tagasi [neestnsissenimekiri 1kui
mis tahes(msisseneestmsissenimekiri2)]

# Printige loendi andmed enne filtrit ja pärast filtrit
printida('Loendi 1 sisu:',nimekiri 1)
printida('Loendi2 sisu:',nimekiri2)
printida('Andmed pärast filtrit',Filtreeri(nimekiri 1,nimekiri2))

Väljund:



Käivitage skript. Mõlemad loendimuutujad sisaldavad 90 ja 12 väärtust. Pärast skripti käivitamist genereeritakse järgmine väljund.

Filtreerige stringi loend, kasutades regulaaravaldist

Nimekiri filtreeritakse, kasutades kõik () ja ükskõik milline () meetodid kahes eelmises näites. Selles näites kasutatakse regulaaravaldist andmete filtreerimiseks loendist. Regulaaravaldis on muster, mille järgi saab andmeid otsida või sobitada. 'Uuesti' moodulit kasutatakse pythonis skripti regulaaravaldise rakendamiseks. Siin deklareeritakse nimekiri koos teemakoodidega. Regulaaravaldist kasutatakse nende teemakoodide filtreerimiseks, mis algavad sõnaga „ CSE '. ' ^ „Sümbolit kasutatakse regulaaravaldistes, et otsida teksti alguses.

# Regulaaravaldise kasutamiseks importige uuesti moodul
import re

# Kuulutage, et loend sisaldab teemakoodi
alamnimekirja= [„CSE-407”, 'PHY-101', „CSE-101”, 'EST-102', 'MAT-202']

# Deklareerige filtri funktsioon
defFiltreeri(datalist):
# Otsige andmeid loendi regulaaravaldise põhjal
tagasi [tundieesttundisissedatalist
kui re.otsing(r'^ CSE',tundi)]

# Printige filtriandmed
printida(Filtreeri(alamnimekirja))

Väljund:

Käivitage skript. alamnimekirja muutuja sisaldab kahte väärtust, mis algavad tähega „ CSE ’. Pärast skripti käivitamist kuvatakse järgmine väljund.

Filtreerige stringi loend lamda avaldise abil

See näide näitab selle kasutamist lamda avaldis andmete filtreerimiseks stringide loendist. Siin on nimekirja muutuja nimega otsing_sõna kasutatakse sisu muutmiseks nimega sisu muutmiseks teksti . Teksti sisu teisendatakse loendiks, teksti_sõna kasutades ruumi lõhestama () meetod. lamda avaldis jätab need väärtused välja teksti_sõna mis eksisteerivad aastal otsing_sõna ja salvestage filtreeritud väärtused muutujale, lisades tühiku.

# Kuulutage nimekiri, mis sisaldab otsingusõna
otsing_sõna= ['Õpeta', 'Kood', 'Programmeerimine', 'Blogi']

# Määrake tekst, kust loendist sõna otsitakse
teksti= Õpi Pythoni programmeerimist Linuxi vihjete ajaveebist

# Jagage tekst ruumi põhjal ja salvestage sõnad loendisse
teksti_sõna=teksti.lõhenema()

# Lambda avaldise abil filtreerige andmed
filter_text= ''.liituda((filter(lambdaval: valmittei
n otsingusõna,teksti_sõna)))

# Printige tekst enne filtreerimist ja pärast filtreerimist
printida(' nTekst enne filtreerimist: n',teksti)
printida(Tekst pärast filtreerimist: n',filter_text)

Väljund:

Käivitage skript. Pärast skripti käivitamist kuvatakse järgmine väljund.

Filtreerige stringi loend, kasutades meetodit filter ()

filter () meetod aktsepteerib kahte parameetrit. Esimene parameeter võtab funktsiooni nime või Puudub ja teine ​​parameeter võtab loendimuutuja nime väärtustena. filter () meetod salvestab need andmed loendist, kui see tagastab tõese väärtuse, vastasel juhul loobub see andmetest. Siin, Puudub on antud esimese parameetri väärtusena. Kõik väärtused ilma vale tuuakse loendist välja filtreeritud andmetena.

# Kuulutage segaandmete loend
listData= ['Tere', 200, 1, 'Maailm', Vale, Tõsi, '0']

# Kõnefiltri () meetod puudub ja loend
filtreeritud andmed= filter(Puudub,listData)

# Printige loend pärast andmete filtreerimist
printida('Loend pärast filtreerimist:')
eesttundisissefiltreeritud Andmed:
printida(tundi)

Väljund:

Käivitage skript. Loendis on ainult üks vale väärtus, mis filtreeritud andmetes välja jäetakse. Pärast skripti käivitamist kuvatakse järgmine väljund.

Järeldus:

Filtreerimine on abiks, kui peate otsima ja loendist teatud väärtusi otsima. Loodan, et ülaltoodud näited aitavad lugejatel mõista stringide loendist andmete filtreerimise viise.