Filtruokite eilutės sąrašą naudodami kitą sąrašą
Šis pavyzdys rodo, kaip eilutės sąrašo duomenis galima filtruoti nenaudojant jokio metodo. Eilutės sąrašas filtruojamas čia naudojant kitą sąrašą. Čia su pavadinimu deklaruojami du sąrašo kintamieji 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 sąrašas1 ir atspausdinkite tas vertes, kurių nėra sąrašas1.
# Paskelbkite du sąrašo kintamuosiuslist1 = ['Perl', 'PHP', 'Java', 'ASP']
list2 = ['JavaScript yra kliento scenarijaus kalba',
„PHP yra serverio pusės scenarijų kalba“,
„Java yra programavimo kalba“,
'Bash yra scenarijų kalba']
# Filtruokite antrąjį sąrašą pagal pirmąjį sąrašą
filter_data = [x x x sąraše2, jei
visi (y nėra x, jei y yra 1 sąraše)]
# Spausdinti 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 po filtro turinys:", filtro_duomenys)
Išvestis:
Paleiskite scenarijų. Čia, sąrašas1 nėra žodžio „Bashas". Išvestyje bus tik viena reikšmė nuo sąrašas2 tai yra 'Bashas yra scenarijų kalba “.
Filtruokite eilutės sąrašą naudodami kitą sąrašą ir pasirinktinę funkciją
Šis pavyzdys parodo, kaip eilutės sąrašą galima filtruoti naudojant kitą sąrašą ir pasirinktinio filtro funkciją. Scenarijuje yra du sąrašo kintamieji, pavadinti „list1“ ir „list2“. Pasirinktinio filtro funkcija sužinos bendras abiejų sąrašo kintamųjų reikšmes.
# Paskelbkite du sąrašo kintamuosiuslist1 = ['90', '67', '34', '55', '12', '87', '32']
list2 = ['9', '90', '38', '45', '12', '20']
# Paskelbkite funkciją, kad filtruotumėte duomenis iš pirmo sąrašo
def filtras (sąrašas1, sąrašas2):
grąžinti [n už n sąrašą1, jei
bet koks (m į n, jei m yra 2 sąraše)]
# Spausdinkite sąrašo duomenis prieš filtrą ir po filtro
spausdinti ("List1 turinys:", list1)
spausdinti ("List2 turinys:", list2)
spausdinti ("Duomenys po filtru", Filtras (sąrašas1, sąrašas2))
Išvestis:
Paleiskite scenarijų. Abiejuose sąrašo kintamuosiuose yra 90 ir 12 reikšmių. Ši išvestis bus sugeneruota paleidus scenarijų.
Filtruokite eilutės sąrašą naudodami įprastą išraišką
Sąrašas filtruojamas naudojant visi () ir bet koks () metodus ankstesniuose dviejuose pavyzdžiuose. Šiame pavyzdyje reguliarus posakis naudojamas duomenims filtruoti iš sąrašo. Reguliarioji išraiška yra šablonas, pagal kurį galima ieškoti ar suderinti bet kokius duomenis. 're' modulis naudojamas pitone, kad scenarijuje būtų taikoma reguliarioji išraiška. Čia deklaruojamas sąrašas su dalyko kodais. Taisyklingoji išraiška naudojama norint filtruoti tuos dalykų kodus, kurie prasideda žodžiu "TPP". "^'simbolis naudojamas įprastų išraiškų šablonuose ieškoti teksto pradžioje.
# Importuokite pakartotinį modulį, kad galėtumėte naudoti reguliariąją išraiškąimporto re
# Paskelbkite, kad sąraše yra dalyko kodas
sublist = ['CSE-407', 'PHY-101', 'CSE-101', 'ENG-102', 'MAT-202']
# Paskelbkite filtro funkciją
def filtras (datalistas):
# Paieškos duomenys pagrįsti sąraše esančia taisyklingąja išraiška
grįžti [val for val in datalist
jei vėl.paieška (r '^ CSE', val)]
# Spausdinkite filtro duomenis
spausdinti (filtras (antrinis sąrašas))
Išvestis:
Paleiskite scenarijų. pogrupis kintamajame yra dvi reikšmės, prasidedančios „TPP". Ši išvestis pasirodys paleidus scenarijų.
Filtruokite eilučių sąrašą naudodami „lamda“ išraišką
Šis pavyzdys rodo lamda išraiška filtruoti duomenis iš eilučių sąrašo. Čia pateikiamas sąrašo kintamasis paieškos žodis naudojamas filtruoti turinį iš tekstinio kintamojo, pavadinto teksto. Teksto turinys paverčiamas į sąrašą, pavadintą, teksto žodis remiantis erdve naudojant padalyti () metodas. lamda išraiškoje šios reikšmės nebus teksto žodis kurie egzistuoja paieškos žodis ir išsaugokite filtruotas reikšmes kintamajame, pridedant tarpą.
# Paskelbkite sąrašą, kuriame yra paieškos žodissearch_word = ["Mokyti", "Kodas", "Programavimas", "Tinklaraštis"]
# Apibrėžkite tekstą, kuriame bus ieškomas žodis iš sąrašo
text = "Sužinokite apie" Python "programavimą iš" Linux Hint Blog "
# Suskirstykite tekstą pagal tarpą ir išsaugokite žodžius sąraše
text_word = tekstas.padalyti ()
# Naudodami lambda išraišką filtruokite duomenis
filter_text = ".prisijungti ((filtras (lambda val: val ne i
n paieškos žodis, teksto žodis)))
# Spausdinkite tekstą prieš filtruodami ir filtruodami
spausdinti ("\ nTekstas prieš filtravimą: \ n", tekstas)
spausdinti ("Tekstas po filtravimo: \ n", filtro_tekstas)
Išvestis:
Paleiskite scenarijų. Ši išvestis pasirodys paleidus scenarijų.
Filtruokite eilučių sąrašą naudodami filter () metodą
filtras() metodas priima du parametrus. Pirmasis parametras užima funkcijos pavadinimą arba Nė vienas o antrasis parametras kaip reikšmes paima sąrašo kintamojo pavadinimą. filtras() metodas saugo tuos duomenis iš sąrašo, jei jie yra teisingi, priešingu atveju, jie atmeta duomenis. Čia, Nė vienas pateikiama kaip pirmoji parametro reikšmė. Visos vertybės be melagingas bus paimti iš sąrašo kaip filtruoti duomenys.
# Paskelbkite mišrių duomenų sąrašąlistData = ['Sveiki', 200, 1, 'Pasaulis', Klaidinga, Tiesa, '0']
# Skambučių filtro () metodas su Nėra ir sąrašu
filteredData = filter (Nėra, „listData“)
# Filtruodami duomenis atsispausdinkite sąrašą
spausdinti ('Sąrašas po filtravimo:')
for val filtruotuose duomenyse:
spausdinti (val)
Išvestis:
Paleiskite scenarijų. Sąraše yra tik viena klaidinga vertė, kuri bus praleista filtruotuose duomenyse. Ši išvestis pasirodys paleidus scenarijų.
Išvada:
Filtravimas yra naudingas, kai reikia ieškoti ir gauti tam tikras reikšmes iš sąrašo. Aš, tikiuosi, aukščiau pateikti pavyzdžiai padės skaitytojams suprasti duomenų filtravimo būdus iš eilučių sąrašo.