Î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
- Folosind numai()
- Folosindbooleeni impliciti
- Folosind Recomandat PEP 8 metodă
- Folosind != operator
- Folosind orice() funcţie
- Folosind == operator
- Folosind incearca/cu exceptia
- Folosind Modulul Numpy
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>