Kaip filtruoti eilučių sąrašą „Python“

How Filter List Strings Python



„Python“ naudoja sąrašo duomenų tipą, kad išsaugotų kelis duomenis nuosekliajame indekse. Jis veikia kaip kitų programavimo kalbų skaitinis masyvas. filter () metodas yra labai naudingas „Python“ metodas. Vieną ar daugiau duomenų reikšmių galima filtruoti iš bet kurios eilutės ar sąrašo ar „Python“ žodyno naudojant filtro () metodą. Jis filtruoja duomenis pagal bet kurią konkrečią sąlygą. Jis saugo duomenis, kai sąlyga grąžina teisingą, ir atmeta duomenis, kai grąžina klaidingą. Kaip sąrašo eilutės duomenis galima filtruoti naudojant „Python“, šiame straipsnyje parodyta naudojant įvairius pavyzdžius. Norėdami išbandyti šio straipsnio pavyzdžius, turite naudoti „Python 3+“.

Filtruokite eilutės sąrašą naudodami kitą sąrašą

Šiame pavyzdyje parodyta, kaip eilutės sąrašo duomenis galima filtruoti nenaudojant jokio metodo. Eilutės sąrašas čia filtruojamas naudojant kitą sąrašą. Čia du sąrašo kintamieji deklaruojami su pavadinimu sąrašas1 ir sąrašas2 . Vertybės sąrašas2 filtruojamas naudojant reikšmes sąrašas1 . Scenarijus atitiks pirmąjį kiekvienos reikšmės žodį sąrašas2 su vertybėmis sąrašas1 ir atsispausdinkite tas vertybes, kurių nėra sąrašas1 .







# Skelbti du sąrašo kintamuosius
sąrašas1= [„Perl“, „PHP“, „Java“, „ASP“]
sąrašas2= [„JavaScript“ yra kliento scenarijų kalba,
„PHP yra serverio scenarijų kalba“,
„Java yra programavimo kalba“,
„Bash“ yra scenarijų kalba]

# Filtruokite antrąjį sąrašą pagal pirmąjį sąrašą
filter_data= [xdėlxįsąrašas2jei
visi(irne įxdėlirįsąrašas1)]

# Spausdinkite sąrašo duomenis prieš filtrą ir po filtro
spausdinti(„Pirmojo sąrašo turinys:“,sąrašas1)
spausdinti(„Antrojo sąrašo turinys:“,sąrašas2)
spausdinti(„Antrojo sąrašo turinys po filtro:“,filter_data)

Išėjimas:



Paleiskite scenarijų. Čia, sąrašas1 nėra žodžio ' Bash “. Išvestyje bus tik viena reikšmė iš sąrašas2 tai yra ' „Bash“ yra scenarijų kalba “ .







Filtruokite eilutės sąrašą naudodami kitą sąrašą ir pasirinktinę funkciją

Šiame pavyzdyje parodyta, kaip eilutės sąrašą galima filtruoti naudojant kitą sąrašą ir pasirinktinio filtro funkciją. Skripte yra du sąrašo kintamieji, pavadinti sąrašas1 ir sąrašas2. Pasirinktinio filtro funkcija sužinos bendras abiejų sąrašo kintamųjų vertes.

# Skelbti du sąrašo kintamuosius
sąrašas1= [„90“, „67“, „3. 4“, „55“, „12“, „87“, „32“]
sąrašas2= [„9“, „90“, „38“, 'Keturi, penki', „12“, 'dvidešimt']

# Paskelbkite funkciją filtruoti duomenis iš pirmojo sąrašo
defFiltras(sąrašas1,sąrašas2):
grįžti [ndėlnįsąrašas1jei
bet koks(mįndėlmįsąrašas2)]

# Spausdinkite sąrašo duomenis prieš filtrą ir po filtro
spausdinti(„1 sąrašo turinys:“,sąrašas1)
spausdinti(„Sąrašo 2 turinys:“,sąrašas2)
spausdinti(„Duomenys po filtro“,Filtras(sąrašas1,sąrašas2))

Išėjimas:



Paleiskite scenarijų. Abiejuose sąrašo kintamuosiuose yra 90 ir 12 reikšmių. Paleidus scenarijų bus sugeneruota ši išvestis.

Filtruokite eilutės sąrašą naudodami įprastą išraišką

Sąrašas filtruojamas naudojant visi () ir bet koks () Ankstesnių dviejų pavyzdžių metodai. Šiame pavyzdyje įprasta išraiška naudojama filtruoti duomenis iš sąrašo. Įprasta išraiška yra modelis, pagal kurį galima ieškoti bet kurio duomenų arba jį suderinti. 'Re' modulis naudojamas „python“, kad scenarijuje būtų naudojama reguliari išraiška. Čia pateikiamas sąrašas su temų kodais. Įprasta išraiška naudojama filtruoti tuos temų kodus, kurie prasideda žodžiu „ TPV “. ' ^ „Simbolis naudojamas taisyklingos išraiškos modeliuose, norint ieškoti teksto pradžioje.

# Importuokite pakartotinį modulį, kad galėtumėte naudoti įprastą išraišką
importas re

# Skelbimų sąraše yra temos kodas
sublist= [„CSE-407“, „PHY-101“, „CSE-101“, „ENG-102“, „MAT-202“]

# Deklaruokite filtro funkciją
defFiltras(datalistas):
# Ieškokite duomenų pagal įprastą išraišką sąraše
grįžti [valdėlvalįdatalistas
jei re.Paieška(r'^ TPV',val)]

# Spausdinkite filtro duomenis
spausdinti(Filtras(sublist))

Išėjimas:

Paleiskite scenarijų. sublist kintamajame yra dvi reikšmės, prasidedančios „ TPV “. Paleidus scenarijų pasirodys ši išvestis.

Filtruokite eilutės sąrašą naudodami lamda išraišką

Šis pavyzdys parodo naudojimą lamda išraiška, skirta filtruoti duomenis iš eilučių sąrašo. Čia yra sąrašo kintamasis search_word naudojamas filtruoti turinį iš teksto kintamojo pavadinimu tekstas . Teksto turinys paverčiamas sąrašu pavadinimu, text_word remiantis erdve naudojant padalinti () metodas. lamda išraiška praleis šias vertes iš text_word kurie egzistuoja search_word ir išsaugokite filtruotas vertes kintamajame, pridėdami vietos.

# Skelbkite sąrašą, kuriame yra paieškos žodis
search_word= ['Mokyti', „Kodas“, „Programavimas“, „Dienoraštis“]

# Apibrėžkite tekstą, kuriame bus ieškoma žodžio iš sąrašo
tekstas= „Išmokti„ Python “programavimo iš„ Linux “patarimų tinklaraščio“

# Padalinkite tekstą pagal erdvę ir išsaugokite žodžius sąraše
text_word=tekstas.suskaldyti()

# Naudodami lambda išraišką filtruokite duomenis
filter_text= ''.prisijungti((filtras(lambdaval: valnei
n paieškos_žodis,text_word)))

# Spausdinkite tekstą prieš filtravimą ir po filtravimo
spausdinti(' nTekstas prieš filtruojant: n',tekstas)
spausdinti(„Tekstas po filtravimo: n',filter_text)

Išėjimas:

Paleiskite scenarijų. Paleidus scenarijų pasirodys ši išvestis.

Filtruokite eilutės sąrašą naudodami filtro () metodą

filtras() metodas priima du parametrus. Pirmasis parametras turi funkcijos pavadinimą arba Nė vienas o antrasis parametras kaip reikšmes ima sąrašo kintamojo pavadinimą. filtras() metodas saugo tuos duomenis iš sąrašo, jei pateikia teisingą, kitaip jis atmeta duomenis. Čia, Nė vienas pateikiama kaip pirmoji parametro reikšmė. Visos vertybės be klaidinga bus išgauti iš sąrašo kaip filtruoti duomenys.

# Skelbti mišrių duomenų sąrašą
listData= ['Sveiki', 200, 1, „Pasaulis“, Netiesa, Tiesa, „0“]

# Skambučių filtro () metodas su „Nėra“ ir sąrašu
filtruoti duomenys= filtras(Nė vienas,listData)

# Išfiltravę duomenis išspausdinkite sąrašą
spausdinti(„Sąrašas po filtravimo:“)
dėlvalįfiltruoti duomenys:
spausdinti(val)

Išėjimas:

Paleiskite scenarijų. Sąraše yra tik viena klaidinga reikšmė, kuri bus praleista filtruotuose duomenyse. Paleidus scenarijų pasirodys ši išvestis.

Išvada:

Filtravimas naudingas, kai reikia ieškoti ir nuskaityti tam tikras sąrašo vertes. Tikiuosi, aukščiau pateikti pavyzdžiai padės skaitytojams suprasti duomenų filtravimo iš eilučių sąrašo būdus.