Python – Sprawdź, czy lista jest pusta, czy nie

W programowaniu w języku Python określenie, czy lista jest pusta, ma znaczenie dla efektywnej obsługi danych. W tym artykule szczegółowo opisano techniki sprawdzania pustej listy, umożliwiające programistom skuteczne sprawdzanie, czy lista zawiera elementy lub jest pozbawiona danych. Dzięki przejrzystym przykładom kodu dowiedz się, jak wdrożyć te metody i zwiększyć swoją biegłość w Pythona zarządzanie listami.

Przykład

  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. 

Jak sprawdzić, czy lista jest pusta w Pythonie

Sprawdź pustą listę za pomocą funkcji len()

Zobaczmy, jak możemy sprawdzić, czy lista jest pusta, czy nie, w mniej Pythoniczny sposób. Powinniśmy unikać tego sposobu jawne sprawdzanie sekwencji lub 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'> )>

Wyjście:

Empty List 

Złożoność czasowa: NA)
Przestrzeń pomocnicza: O(n), gdzie n jest długością listy

Sprawdź pustą listę, używając ukrytych wartości logicznych

Przyjrzyjmy się teraz bardziej Pythonicznemu sposobowi sprawdzenia, czy lista jest pusta. Ta metoda sprawdzania jest ukryta sposób sprawdzenia i mor To jest lepszy niż poprzedni .

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

Wyjście:

The list is Empty 

Złożoność czasowa: NA)
Przestrzeń pomocnicza: O(n), gdzie n jest długością listy

Sprawdź pustą listę, korzystając z metody zalecanej przez PEP 8

To kolejna metoda, która pozwala nam określić, czy lista w Pythonie jest pusta. Najbardziej Pythoniczną metodę sprawdzania tego samego pokazano poniżej.

Python3




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

Wyjście:

list is empty 

Złożoność czasowa: O(1)
Przestrzeń pomocnicza: O(1)

Porównanie danej listy z pustą listą za pomocą operatora !=

Dostarczony kod Pythona sprawdza, czy lista lis1> jest pusty lub nie używa an if> oświadczenie. Jeśli lista nie jest pusta, zostanie wypisana Lista nie jest pusta; w przeciwnym razie drukuje pustą listę. Osiąga się to poprzez porównanie listy z pustą listą za pomocą operatora nierówności !=> . W tym konkretnym przypadku, gdzie lis1> jest inicjowany jako pusta lista, warunek ma wartość false, co daje wynik Pusta lista.

Python3




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

Wyjście

Empty List 

Porównywanie podanej listy z pustą listą za pomocą operatora ==

Kolejny if> instrukcja ocenia, czy lis1> jest równa pustej liście, oznaczonej przez []> . Jeżeli warunek jest spełniony, co oznacza, że ​​lista rzeczywiście jest pusta, program wypisuje na konsoli pustą listę. Jeśli warunek jest fałszywy, co oznacza, że ​​lista nie jest pusta, program zamiast tego wyświetla listę Lista nie jest pusta.

Python3




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

Wyjście

Empty List 

Podejście to ma tę zaletę, że jest zwięzłe i łatwe do zrozumienia. Jest to również ogólnie szybsze niż inne podejścia polegające na przeglądaniu elementów listy w pętli.

Sprawdź pustą listę za pomocą spróbuj/z wyjątkiem

Aby sprawdzić, czy lista jest pusta lub czy nie używasz try/except w Pythonie, możesz użyć następującego algorytmu:

Algorytm:

Zainicjuj listę. Spróbuj uzyskać dostęp do pierwszego elementu listy za pomocą lst[0]. Jeśli powyższy krok zgłosi wyjątek IndexError, lista jest pusta. W przeciwnym razie lista nie jest pusta. Obsłuż wyjątek, drukując pustą listę. Oto implementacja powyższego algorytmu w kodzie Pythona:

Python3




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

Wyjście

Empty List 

Złożoność czasowa: O(1), ponieważ dostęp do pierwszego elementu listy zajmuje stały czas.
Przestrzeń pomocnicza: O(1), ponieważ nie używamy dodatkowej przestrzeni do wykonania tej operacji.

Sprawdź pustą listę za pomocą moduł Numpy

Przykład 1: Jeśli mamy tablicę NumPy, właściwą metodą we wszystkich przypadkach jest użycie if .rozmiar . Ten rozmiar sprawdza rozmiar tablic i odpowiednio zwraca wartość True lub False. Przykład:

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

Wyjście:

Empty 

Przykład 2 : Ten przykład pokazuje inny przypadek z pojedynczym elementem 0, który nie powiódł się w poprzednich przypadkach.

Python3




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

Wyjście:

Not Empty