Bei der Python-Programmierung ist die Feststellung, ob eine Liste leer ist, für eine effektive Datenverarbeitung wichtig. Dieser Artikel befasst sich mit prägnanten Techniken zum Überprüfen der Leere einer Liste, die es Entwicklern ermöglichen, effizient zu validieren, ob eine Liste Elemente enthält oder keine Daten enthält. Erfahren Sie anhand klarer Codebeispiele, wie Sie diese Methoden implementieren und Ihre Kenntnisse darin stärken Pythons Listenverwaltung.
Beispiel
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.>
So überprüfen Sie in Python, ob eine Liste leer ist
- Verwendung der nur()
- Verwendung derimplizite boolesche Werte
- Verwendung der PEP 8 empfohlen Methode
- Verwendung der != Operator
- Verwendung der beliebig() Funktion
- Benutzen == Operator
- Benutzen versuchen/außer
- Benutzen Numpy-Modul
Überprüfen Sie die leere Liste mit len()
Sehen wir uns an, wie wir auf weniger pythonische Weise überprüfen können, ob eine Liste leer ist oder nicht. Diesen Weg sollten wir vermeiden explizit nach einer Sequenz suchen oder 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'>)> |
>
>
Ausgabe:
Empty List>
Zeitkomplexität: An)
Nebenraum: O(n), wobei n die Länge der Liste ist
Überprüfen Sie die leere Liste mithilfe der impliziten Booleschen Werte
Sehen wir uns nun eine eher pythonische Möglichkeit an, nach einer leeren Liste zu suchen. Diese Prüfmethode ist implizit Art der Überprüfung und mehr Es ist besser als das vorherige .
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'>)> |
>
>
Ausgabe:
The list is Empty>
Zeitkomplexität: An)
Nebenraum: O(n), wobei n die Länge der Liste ist
Überprüfen Sie die leere Liste mit der von PEP 8 empfohlenen Methode
Dies ist eine weitere Methode, mit der wir feststellen können, ob eine Liste in Python leer ist. Die pythonischste Methode zur Überprüfung wird unten gezeigt.
Python3
list1>=> {>'a'>:>1>,>'b'>:>2>,>'c'>:>3>}> list2>=> []> > if> list2:> >print>(>'list is not empty'>)> else>:> >print>(>'list is empty'>)> |
>
>
Ausgabe:
list is empty>
Zeitkomplexität: O(1)
Nebenraum: O(1)
Vergleichen einer bestimmten Liste mit einer leeren Liste mithilfe des Operators !=
Der bereitgestellte Python-Code prüft, ob die Listelis1>ist leer oder verwendet keinif>Stellungnahme. Wenn die Liste nicht leer ist, wird The list is not empty; andernfalls wird eine leere Liste ausgegeben. Dies wird erreicht, indem die Liste mithilfe des Ungleichheitsoperators mit einer leeren Liste verglichen wird!=>. In diesem speziellen Fall, wolis1>als leere Liste initialisiert wird, wird die Bedingung als „falsch“ ausgewertet, was zur Ausgabe „Leere Liste“ führt.
Python3
int-Zeichenfolge
# Python code to check for empty list> lis1>=> []> if> lis1!>=>[]:> >print>(>'The list is not empty'>)> else>:> >print>(>'Empty List'>)> |
>
>Ausgabe
Empty List>
Vergleichen einer gegebenen Liste mit einer leeren Liste unter Verwendung des ==-Operators
Das anschließendeif>Die Anweisung wertet aus, ob dielis1>ist gleich einer leeren Liste, bezeichnet mit[]>. Wenn die Bedingung wahr ist, was bedeutet, dass die Liste tatsächlich leer ist, gibt das Programm „Empty List“ auf der Konsole aus. Wenn die Bedingung falsch ist, was darauf hinweist, dass die Liste nicht leer ist, gibt das Programm stattdessen „Die Liste ist nicht leer“ aus.
Python3
# Python code to check for empty list> lis1>=> []> if> lis1>=>=>[]:> >print>(>'Empty List'>)> else>:> >print>(>'The list is not empty'>)> |
>
>Ausgabe
Empty List>
Dieser Ansatz hat den Vorteil, dass er prägnant und leicht verständlich ist. Es ist im Allgemeinen auch schneller als andere Ansätze, bei denen die Elemente der Liste in einer Schleife durchlaufen werden.
Überprüfen Sie die leere Liste mit versuchen/außer
Um zu überprüfen, ob eine Liste leer ist oder nicht mithilfe von try/exclusive in Python, können Sie den folgenden Algorithmus verwenden:
Algorithmus:
Initialisieren Sie die Liste. Versuchen Sie, mit lst[0] auf das erste Element der Liste zuzugreifen. Wenn der obige Schritt eine IndexError-Ausnahme auslöst, ist die Liste leer. Ansonsten ist die Liste nicht leer. Behandeln Sie die Ausnahme, indem Sie eine leere Liste ausgeben. Hier ist die Python-Code-Implementierung des obigen Algorithmus:
Python3
# Python code to check for empty list> lst>=> []> > try>:> >lst[>0>]> >print>(>'The list is not empty'>)> except> IndexError:> >print>(>'Empty List'>)> |
>
>Ausgabe
Empty List>
Zeitkomplexität: O(1), da der Zugriff auf das erste Element der Liste eine konstante Zeit benötigt.
Nebenraum: O(1), da wir für die Durchführung dieser Operation keinen zusätzlichen Speicherplatz benötigen.
Überprüfen Sie die leere Liste mit das Numpy-Modul
Beispiel 1: Wenn wir ein NumPy-Array haben, ist die Verwendung von if in allen Fällen die richtige Methode .Größe . Diese Größe überprüft die Größe der Arrays und gibt entsprechend True oder False zurück. Beispiel:
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'>)> |
>
>
Ausgabe:
Empty>
Beispiel 2 : Dieses Beispiel zeigt den anderen Fall mit einem einzelnen 0-Element, der in den vorherigen Fällen fehlgeschlagen ist.
Python3
import> numpy> > def> Enquiry(lis1):> >return>(numpy.array(lis1))> > # Driver Code> lis1>=> [>0>, ]> if> Enquiry(lis1).size:> >print>(>'Not Empty'>)> else>:> >print>(>'Empty'>)> |
>
>
Ausgabe:
Not Empty>