Python – Kontrollera om en lista är tom eller inte
I Python-programmering är det viktigt att avgöra om en lista är tom för effektiv datahantering. Den här artikeln går in på kortfattade tekniker för att kontrollera tomheten i en lista, vilket gör det möjligt för utvecklare att effektivt validera om en lista innehåller element eller saknar data. Genom tydliga kodexempel kan du lära dig hur du implementerar dessa metoder och stärker din kompetens inom Python listhantering.
Exempel
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.
Hur man kontrollerar om en lista är tom i Python
- Använda endast()
- Använda implicita booleaner
- Använda PEP 8 rekommenderas metod
- Använda != operatör
- Använda några() fungera
- Använder sig av == operatör
- Använder sig av försök/utom
- Använder sig av Numpy modul
Kontrollera den tomma listan med hjälp av len()
Låt oss se hur vi kan kontrollera om en lista är tom eller inte, på ett mindre pytoniskt sätt. Vi bör undvika detta sätt explicit letar efter en sekvens eller lista
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
Tidskomplexitet: På)
Extra utrymme: O(n), där n är längden på listan
Kontrollera den tomma listan med de implicita booleanerna
Låt oss nu se ett mer pytoniskt sätt att leta efter en tom lista. Denna kontrollmetod är implicit sätt att kontrollera och mor Det är att föredra än den föregående .
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
Tidskomplexitet: På)
Extra utrymme: O(n), där n är längden på listan
Kontrollera den tomma listan med den rekommenderade metoden PEP 8
Detta är en annan metod som låter oss avgöra om en lista i Python är tom. Den mest pytoniska metoden för att kontrollera detsamma visas nedan.
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
Tidskomplexitet: O(1)
Extra utrymme: O(1)
Jämföra en given lista med en tom lista med operatorn !=
Den medföljande Python-koden kontrollerar om listan lis1> är tom eller använder inte en if> påstående. Om listan inte är tom skrivs den ut. Listan är inte tom; annars skrivs det ut Tom lista. Detta uppnås genom att jämföra listan med en tom lista med hjälp av olikhetsoperatorn !=> . I det här specifika fallet, var lis1> initieras som en tom lista, utvärderas villkoret till falskt, vilket resulterar i utmatningen Tom lista.
Python3
# Python code to check for empty list> lis1> => []> if> lis1!> => []:> > print> (> 'The list is not empty'> )> else> :> > print> (> 'Empty List'> )> |
Produktion
Empty List
Jämför en given lista med tom lista med operatorn ==
Den efterföljande if> uttalande utvärderar om lis1> är lika med en tom lista, betecknad med []> . Om villkoret är sant, vilket betyder att listan verkligen är tom, skriver programmet ut Empty List till konsolen. Om villkoret är falskt, vilket indikerar att listan inte är tom, skriver programmet istället ut Listan är inte 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
Detta tillvägagångssätt har fördelen av att vara kortfattat och lätt att förstå. Det är också i allmänhet snabbare än andra tillvägagångssätt som involverar att gå igenom elementen i listan.
Kontrollera den tomma listan med försök/utom
För att kontrollera om en lista är tom eller inte använder try/förutom i Python, kan du använda följande algoritm:
Algoritm:
Initiera listan. Försök att komma åt det första elementet i listan med lst[0]. Om steget ovan ger upphov till ett IndexError-undantag är listan tom. Annars är listan inte tom. Hantera undantaget genom att skriva ut Empty List.Här är Python-kodimplementeringen av ovanstående algoritm:
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
Tidskomplexitet: O(1), eftersom åtkomst till det första elementet i listan tar konstant tid.
Extra utrymme: O(1), eftersom vi inte använder något extra utrymme för att utföra denna operation.
Kontrollera den tomma listan med Numpy-modulen
Exempel 1: Om vi har en NumPy-matris är den korrekta metoden i alla fall att använda if .storlek . Denna storlek kontrollerar storleken på arrayerna och returnerar True eller False i enlighet med detta. Exempel:
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
Exempel 2 : Det här exemplet visar det andra fallet med ett enda 0-element, som misslyckades i de tidigare fallen.
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