Lister brukes til å lagre data av forskjellige typer, og disse dataene kan brukes direkte til dataanalyse eller for databehandlingsformål. "Ingen" på listen kan forårsake alvorlige uklarheter i resultatet av disse operasjonene, som ikke er det du vil, gjør du? Vel, denne guiden vil bruke forskjellige metoder og tilnærminger for å fjerne alle “ingen” -verdiene fra listen.
Nedenfor er alle de forskjellige løsningene som kan brukes til å fjerne ingen fra listen i Python:
Løsning 1: Bruke Fjern () -metoden med __Contains __ () -metoden
Hver gang brukeren ønsker å fjerne et element, er den aller første metoden som kommer til hjernen Remove () -metoden. Imidlertid kan ikke fjerne metoden brukes til å fjerne alle/multippel ingen verdier fra listen. Fordi Fjern () -metoden bare fjerner den første forekomsten av elementet fra listen.
For å demonstrere dette, ta følgende kode:
listvar = [69,22,65, ingen, ingen, 123,6789, ingen]
Listvar.Fjern (ingen)
Print (Listvar)
Å utføre denne koden vil gi følgende resultat på maskinens terminal:
Utgangen bekrefter at bare den første forekomsten av “ingen” ble fjernet. For å fjerne alle forekomstene av “Ingen” fra listen, bruk mens Loop sammen med __Contains __ () -metoden:
listvar = [69,22,65, ingen, ingen, 123,6789, ingen]
Mens Listvar.__ Contains __ (ingen):
Listvar.Fjern (ingen)
Print (Listvar)
I dette kodebiten, mens Loop fortsetter å løpe til det ikke er flere tilfeller av "ingen" igjen på listen. Når denne koden blir utført, gir den følgende resultat på terminalen:
Utgangen bekrefter at det ikke er flere tilfeller av "ingen" som finnes på listen, noe som betyr at alle av dem er fjernet med hell.
Løsning 2: Bruke listeforståelse med IF-kondisjon
En annen måte å fjerne "ingen" fra listen er ved å bruke listeforståelsen for å gå gjennom hvert element, sammenligne den med "ingen" gjennom IF-kondisjonen, og plassere ikke-ingen verdier i en egen liste.
For å fjerne ingen fra listen ved hjelp av denne metoden, ta følgende kodebit:
listvar = [69,22,65, ingen, ingen, 123,6789, ingen]
newlist = []
for x i listvar:
Hvis x ikke er ingen:
Newlist.vedlegg (x)
Print ("Original List:", Listvar)
Print ("Ny liste:", Newlist)
Når denne koden blir utført, vil den gi følgende utfall på maskinens terminal:
Utgangen bekrefter at det ikke er noen "ingen" verdier som er til stede i den nye listen.
Løsning 3: Bruke filter () -metoden for å fjerne ingen verdier fra listen
Filter () -metoden kan også brukes til å fjerne “ingen” fra en liste, men å bruke den kan normalt forårsake noen problemer. Filter () -metoden anser verdien “0” som “ingen”, og fjerner den også fra listen også. For å demonstrere dette, ta følgende kode:
listvar = [69,0,22,65,0, ingen, ingen, 123,6789, ingen]
res = liste (filter (ingen, listvar))
Print ("Original List:", Listvar)
trykk ("Liste etter filter:", res)
Når denne koden blir utført, vil den gi følgende resultat på terminalen din:
Fra utgangen kan det tydelig observeres at filter () -metoden også har fjernet verdien “0” fra listen.
Den riktige måten å bruke filter () -metoden for å fjerne alle “ingen” -verdiene fra listen uten å avbryte andre verdier på listen er å bruke en “lambda -setning” innenfor det første argumentet:
listvar = [69,0,22,65,0, ingen, ingen, 123,6789, ingen]
RES = LIST (Filter (Lambda Elem: Elem er ikke ingen, listvar)))
Print ("Original List:", Listvar)
trykk ("Liste etter filter:", res)
Denne gangen når koden blir utført, vil den produsere følgende utgang på terminalen:
Som du ser har du fjernet alle “ingen” -verdiene fra listen med hell ved å bruke filter () -metoden.
Konklusjon
Brukeren kan fjerne alle “Ingen”Verdier fra en Python-liste ved å bruke Fjern () -metoden sammen med __ Contains __ () -metoden, liste forståelse med IF-kondisjon, eller ved å bruke filter () -metoden med Lambda-setningen. Alle disse tre metodene er grundig utdypet i dette innlegget med billedlig representasjon.