Python – Tjek om en liste er tom eller ej

I Python-programmering er det vigtigt at bestemme, om en liste er tom, for effektiv datahåndtering. Denne artikel dykker ned i kortfattede teknikker til at kontrollere tomheden af ​​en liste, hvilket gør det muligt for udviklere effektivt at validere, om en liste indeholder elementer eller er blottet for data. Gennem klare kodeeksempler kan du lære, hvordan du implementerer disse metoder og styrker dine færdigheder i Python's listestyring.

Eksempel

  Input:   ['Geeks', 'Geeks', 'Geeks', 'Geeks', ]   Output:   Yes Not Empty   Input:   [ ]   Output:   Empty   Explaination:   In first example the list have elements in it and not empty, in second case the list is empty having no elemnts in it. 

Sådan kontrolleres, om en liste er tom i Python

Tjek den tomme liste ved hjælp af len()

Lad os se, hvordan vi kan kontrollere, om en liste er tom eller ej, på en mindre pytonisk måde. Vi bør undgå denne måde eksplicit at kontrollere for en sekvens eller liste

Python3




def> Enquiry(lis1):> > if> len> (lis1)> => => 0> :> > return> 0> > else> :> > return> 1> > # Driver Code> lis1> => []> if> Enquiry(lis1):> > print> (> 'The list is not empty'> )> else> :> > print> (> 'Empty List'> )>

Produktion:

Empty List 

Tidskompleksitet: På)
Hjælpeplads: O(n), hvor n er længden af ​​listen

Tjek den tomme liste ved hjælp af de implicitte Booleans

Lad os nu se en mere pytonisk måde at tjekke for en tom liste. Denne kontrolmetode er implicit måde at tjekke og mor det er at foretrække end den forrige .

Python3




def> Enquiry(lis1):> > if> not> lis1:> > return> 1> > else> :> > return> 0> > # Driver Code> lis1> => []> if> Enquiry(lis1):> > print> (> 'The list is Empty'> )> else> :> > print> (> 'The list is not empty'> )>

Produktion:

The list is Empty 

Tidskompleksitet: På)
Hjælpeplads: O(n), hvor n er længden af ​​listen

Tjek den tomme liste ved at bruge den PEP 8 anbefalede metode

Dette er en anden metode, der giver os mulighed for at bestemme, om en liste i Python er tom. Den mest pytoniske metode til at kontrollere det samme er vist nedenfor.

Python3




list1> => {> 'a'> :> 1> ,> 'b'> :> 2> ,> 'c'> :> 3> }> list2> => []> > if> list2:> > print> (> 'list is not empty'> )> else> :> > print> (> 'list is empty'> )>

Produktion:

list is empty 

Tidskompleksitet: O(1)
Hjælpeplads: O(1)

Sammenligning af en given liste med en tom liste ved hjælp af !=-operatoren

Den medfølgende Python-kode kontrollerer, om listen lis1> er tom eller bruger ikke en if> udmelding. Hvis listen ikke er tom, udskrives den. Listen er ikke tom; ellers udskriver den tom liste. Dette opnås ved at sammenligne listen med en tom liste ved hjælp af ulighedsoperatoren !=> . I dette konkrete tilfælde, hvor lis1> initialiseres som en tom liste, evalueres betingelsen til falsk, hvilket resulterer i outputtet Tom liste.

Python3




# Python code to check for empty list> lis1> => []> if> lis1!> => []:> > print> (> 'The list is not empty'> )> else> :> > print> (> 'Empty List'> )>

Produktion

Empty List 

Sammenligning af given liste med tom liste ved hjælp af == operator

Den efterfølgende if> erklæringen vurderer, om lis1> er lig med en tom liste, betegnet med []> . Hvis betingelsen er sand, hvilket betyder, at listen faktisk er tom, udskriver programmet Tom liste til konsollen. Hvis betingelsen er falsk, hvilket indikerer, at listen ikke er tom, udskriver programmet i stedet Listen er ikke tom.

Python3




# Python code to check for empty list> lis1> => []> if> lis1> => => []:> > print> (> 'Empty List'> )> else> :> > print> (> 'The list is not empty'> )>

Produktion

Empty List 

Denne tilgang har den fordel, at den er kortfattet og let at forstå. Det er generelt også hurtigere end andre tilgange, der involverer at gå gennem listens elementer.

Tjek den tomme liste vha prøv/undtagen

For at kontrollere, om en liste er tom eller ikke bruger try/undtagen i Python, kan du bruge følgende algoritme:

Algoritme:

Initialiser listen. Prøv at få adgang til det første element på listen ved hjælp af lst[0]. Hvis ovenstående trin rejser en IndexError-undtagelse, er listen tom. Ellers er listen ikke tom. Håndter undtagelsen ved at udskrive Tom List.Her er Python-kodeimplementeringen af ​​ovenstående algoritme:

Python3




# Python code to check for empty list> lst> => []> > try> :> > lst[> 0> ]> > print> (> 'The list is not empty'> )> except> IndexError:> > print> (> 'Empty List'> )>

Produktion

Empty List 

Tidskompleksitet: O(1), da adgang til det første element i listen tager konstant tid.
Hjælpeplads: O(1), da vi ikke bruger ekstra plads til at udføre denne operation.

Tjek den tomme liste vha Numpy-modulet

Eksempel 1: Hvis vi har et NumPy-array, er den korrekte metode i alle tilfælde at bruge if .størrelse . Denne størrelse kontrollerer størrelsen af ​​arrays og returnerer True eller False i overensstemmelse hermed. Eksempel:

Python3




# Numpythonic way to check emptiness> # Use of size> import> numpy> > def> Enquiry(lis1):> > return> (numpy.array(lis1))> > > # Driver Code> lis1> => []> if> Enquiry(lis1).size:> > print> (> 'Not Empty'> )> else> :> > print> (> 'Empty'> )>

Produktion:

Empty 

Eksempel 2 : Dette eksempel viser den anden sag med et enkelt 0-element, som mislykkedes i de foregående tilfælde.

Python3




import> numpy> > def> Enquiry(lis1):> > return> (numpy.array(lis1))> > # Driver Code> lis1> => [> 0> , ]> if> Enquiry(lis1).size:> > print> (> 'Not Empty'> )> else> :> > print> (> 'Empty'> )>

Produktion:

Not Empty