Cum se filtrează o listă de șiruri în Python

How Filter List Strings Python



Python folosește tipul de date din listă pentru a stoca mai multe date într-un index secvențial. Funcționează ca o serie numerică de alte limbaje de programare. metoda filter () este o metodă foarte utilă a Python. Una sau mai multe valori de date pot fi filtrate din orice șir sau listă sau dicționar din Python folosind metoda filter (). Filtrează datele pe baza oricărei condiții particulare. Stochează date când condiția returnează adevărat și aruncă date atunci când returnează fals. Modul în care datele șirului dintr-o listă pot fi filtrate în Python este prezentat în acest articol folosind diferite exemple. Trebuie să utilizați Python 3+ pentru a testa exemplele acestui articol.

Filtrați o listă de șiruri utilizând o altă listă

Acest exemplu arată cum datele dintr-o listă de șiruri pot fi filtrate fără a utiliza nicio metodă. Lista șirului este filtrată aici utilizând o altă listă. Aici, două variabile de listă sunt declarate cu numele list1 și list2 . Valorile list2 este filtrat utilizând valorile de list1 . Scriptul se va potrivi cu primul cuvânt din fiecare valoare a list2 cu valorile de list1 și tipăriți acele valori care nu există în list1 .







# Declarați două variabile de listă
list1= [„Perl”, „PHP”, „Java”, „ASP”]
list2= [„JavaScript este un limbaj de script pentru partea clientului”,
„PHP este un limbaj de script pe partea de server”,
„Java este un limbaj de programare”,
„Bash este un limbaj de scriptare”]

# Filtrați a doua listă pe baza primei liste
date_filtru= [XpentruXînlist2dacă
toate(șinu înXpentrușiînlist1)]

# Imprimați datele listei înainte de filtrare și după filtrare
imprimare(„Conținutul primei liste:”,list1)
imprimare(„Conținutul celei de-a doua liste:”,list2)
imprimare(„Conținutul celei de-a doua liste după filtrare:”,date_filtru)

Ieșire:



Rulați scriptul. Aici, list1 nu conține cuvântul „ Bash '. Ieșirea va conține o singură valoare din list2 acesta este ' Bash este un limbaj de scriptare ” .







Filtrează o listă de șiruri folosind o altă listă și o funcție personalizată

Acest exemplu arată cum poate fi filtrată o listă de șiruri utilizând o altă listă și funcția de filtrare personalizată. Scriptul conține două variabile list numite list1 și list2. Funcția de filtrare personalizată va afla valorile comune ale ambelor variabile de listă.

# Declarați două variabile de listă
list1= [„90”, „67”, „3. 4”, „55”, „12”, „87”, „32”]
list2= [„9”, „90”, „38”, 'Patru cinci', „12”, 'douăzeci']

# Declarați o funcție pentru a filtra datele din prima listă
defFiltru(list1,list2):
întoarcere [npentrunînlist1dacă
orice(mînnpentrumînlist2)]

# Imprimați datele listei înainte de filtrare și după filtrare
imprimare(„Conținutul listei1:”,list1)
imprimare(„Conținutul listei2:”,list2)
imprimare(„Datele după filtrare”,Filtru(list1,list2))

Ieșire:



Rulați scriptul. 90 și 12 valori există în ambele variabile de listă. Următoarea ieșire va fi generată după rularea scriptului.

Filtrează o listă de șiruri folosind expresia regulată

Lista este filtrată folosind toate() și orice() metodele din cele două exemple precedente. O expresie regulată este utilizată în acest exemplu pentru a filtra datele dintr-o listă. O expresie regulată este un model prin care orice date pot fi căutate sau potrivite. 're' modulul este utilizat în python pentru a aplica expresia regulată în script. Aici este declarată o listă cu coduri de subiect. O expresie regulată este utilizată pentru a filtra acele coduri de subiect care încep cu cuvântul „ CSE '. ' ^ „Simbolul este utilizat în modele de expresie obișnuite pentru a căuta la începutul textului.

# Importați modulul re pentru a utiliza expresia regulată
import re

# Declarați că lista conține codul subiectului
sublist= [„CSE-407”, „PHY-101”, „CSE-101”, „ENG-102”, „MAT-202”]

# Declarați funcția de filtrare
defFiltru(datalist):
# Căutați date pe baza expresiei regulate din listă
întoarcere [orepentruoreîndatalist
dacă re.căutare(r„^ CSE”,ore)]

# Imprimați datele filtrului
imprimare(Filtru(sublist))

Ieșire:

Rulați scriptul. sublist variabila conține două valori care încep cu „ CSE '. Următoarea ieșire va apărea după rularea scriptului.

Filtrează o listă de șiruri folosind expresia lamda

Acest exemplu arată utilizarea lamda expresie pentru a filtra datele dintr-o listă de șiruri. Aici, o variabilă de listă numită căutare_cuvânt este folosit pentru a filtra conținutul dintr-o variabilă text numită text . Conținutul textului este convertit într-o listă numită, text_word bazat pe spațiu prin utilizarea Despică() metodă. lamda expresia va omite acele valori din text_word care există în căutare_cuvânt și stocați valorile filtrate într-o variabilă adăugând spațiu.

# Declarați o listă care conține cuvântul de căutare
căutare_cuvânt= ['A preda', 'Cod', „Programare”, „Blog”]

# Definiți textul în care va căuta cuvântul din listă
text= „Aflați programarea Python din Linux Hint Blog”

# Împarte textul pe baza spațiului și stochează cuvintele într-o listă
text_word=text.Despică()

# Utilizarea expresiei lambda filtrează datele
text_filtru= ''.a te alatura((filtru(lambdaval: valnueu
n căutare_cuvânt,text_word)))

# Imprimați text înainte de filtrare și după filtrare
imprimare(' nText înainte de filtrare: n',text)
imprimare(„Text după filtrare: n',text_filtru)

Ieșire:

Rulați scriptul. Următoarea ieșire va apărea după rularea scriptului.

Filtrează o listă de șiruri folosind metoda filter ()

filtru() metoda acceptă doi parametri. Primul parametru ia un nume de funcție sau Nici unul iar al doilea parametru ia numele variabilei listă ca valori. filtru() metoda stochează acele date din listă dacă returnează adevărat, în caz contrar, aruncă datele. Aici, Nici unul este dat ca prima valoare a parametrului. Toate valorile fără fals vor fi preluate din listă ca date filtrate.

# Declarați o listă de date mix
listData= ['Buna ziua', 200, 1, 'Lume', Fals, Adevărat, „0”]

# Metoda filter filter () cu None și o listă
FilteredData= filtru(Nici unul,listData)

# Imprimați lista după filtrarea datelor
imprimare('Lista după filtrare:')
pentruoreînDate filtrate:
imprimare(ore)

Ieșire:

Rulați scriptul. Lista conține o singură valoare falsă care va fi omisă în datele filtrate. Următoarea ieșire va apărea după rularea scriptului.

Concluzie:

Filtrarea este utilă atunci când trebuie să căutați și să recuperați anumite valori dintr-o listă. Sper că exemplele de mai sus îi vor ajuta pe cititori să înțeleagă modalitățile de filtrare a datelor dintr-o listă de șiruri.