logo

Python – Verificați dacă o listă este goală sau nu

În programarea Python, determinarea dacă o listă este goală are importanță pentru manipularea eficientă a datelor. Acest articol analizează tehnici concise de verificare a golului unei liste, permițând dezvoltatorilor să valideze eficient dacă o listă conține elemente sau este lipsită de date. Prin exemple de cod clare, aflați cum să implementați aceste metode și să vă consolidați competențele în Python’s managementul listelor.

Exemplu

  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.>

Cum să verificați dacă o listă este goală în Python

Verificați lista goală folosind len()

Să vedem cum putem verifica dacă o listă este goală sau nu, într-un mod mai puțin Pythonic. Ar trebui să evităm acest mod de verificând în mod explicit o secvență sau listă



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'>)>

„abc” este în cifre”

>

>

Ieșire:

Empty List>

Complexitatea timpului: Pe)
Spatiu auxiliar: O(n), unde n este lungimea listei

Verificați lista goală folosind valorile booleene implicite

Acum să vedem un mod mai Pythonic de a verifica dacă există o listă goală. Această metodă de verificare este implicită mod de verificare si mor Este preferabil decât precedentul .

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'>)>

>

>

Ieșire:

The list is Empty>

Complexitatea timpului: Pe)
Spatiu auxiliar: O(n), unde n este lungimea listei

Verificați lista goală folosind metoda recomandată de PEP 8

Aceasta este o altă metodă care ne permite să stabilim dacă o listă în Python este goală. Cea mai pitonică metodă de verificare a aceluiași lucru este prezentată mai jos.

Python3




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

alfabet după număr

>

>

Ieșire:

list is empty>

Complexitatea timpului: O(1)
Spatiu auxiliar: O(1)

Compararea unei liste date cu o listă goală folosind operatorul !=

Codul Python furnizat verifică dacă listalis1>este gol sau nu folosește unif>afirmație. Dacă lista nu este goală, se tipărește Lista nu este goală; în caz contrar, tipărește Lista goală. Acest lucru se realizează prin compararea listei cu o listă goală folosind operatorul de inegalitate!=>. În acest caz specific, undelis1>este inițializată ca o listă goală, condiția este evaluată la fals, rezultând în ieșire Lista goală.

Python3




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

>

>

Ieșire

Empty List>

Compararea listei date cu lista goală folosind operatorul ==

Ulteriorif>declarația evaluează dacălis1>este egal cu o listă goală, notat cu[]>. Dacă condiția este adevărată, adică lista este într-adevăr goală, programul tipărește Lista goală pe consolă. Dacă condiția este falsă, indicând că lista nu este goală, programul tipărește în schimb Lista nu este goală.

Python3




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

>

>

Ieșire

Empty List>

Această abordare are avantajul de a fi concisă și ușor de înțeles. De asemenea, este, în general, mai rapid decât alte abordări care implică trecerea în buclă a elementelor listei.

Verificați lista goală folosind incearca/cu exceptia

Pentru a verifica dacă o listă este goală sau nu folosește try/except în Python, poți folosi următorul algoritm:

Algoritm:

decodare js base64

Inițializați lista. Încercați să accesați primul element al listei folosind lst[0]. Dacă pasul de mai sus ridică o excepție IndexError, atunci lista este goală. În caz contrar, lista nu este goală. Gestionați excepția prin imprimarea listei goale. Iată implementarea codului Python a algoritmului de mai sus:

Python3




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

>

>

Ieșire

Empty List>

Complexitatea timpului: O(1), deoarece accesarea primului element al listei necesită timp constant.
Spatiu auxiliar: O(1), deoarece nu folosim niciun spațiu suplimentar pentru a efectua această operație.

Verificați lista goală folosind modulul Numpy

Exemplul 1: Dacă avem o matrice NumPy, atunci metoda corectă în toate cazurile este să folosim if .mărimea . Această dimensiune verifică dimensiunea matricelor și returnează True sau False în consecință. Exemplu:

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'>)>

>

>

Ieșire:

Empty>

Exemplul 2 : Acest exemplu arată celălalt caz cu un singur element 0, care a eșuat în cazurile anterioare.

Python3




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

controlul programului stocat

>

>

Ieșire:

Not Empty>