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ändaimplicita 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'>)> |
>
konvertera sträng till int java
>
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 listanlis1>är tom eller använder inte enif>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, varlis1>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öljandeif>uttalande utvärderar omlis1>ä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
personalvalskommissionens betydelse
# 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>