Python — pārbaudiet, vai saraksts ir tukšs

Python programmēšanā efektīvai datu apstrādei ir svarīgi noteikt, vai saraksts ir tukšs. Šajā rakstā ir aplūkotas īsas metodes, kā pārbaudīt saraksta tukšumu, ļaujot izstrādātājiem efektīvi pārbaudīt, vai sarakstā ir elementi vai tajā nav datu. Izmantojot skaidrus koda piemērus, uzziniet, kā ieviest šīs metodes un nostiprināt savas prasmes Python's sarakstu pārvaldība.

Piemērs

  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. 

Kā pārbaudīt, vai Python saraksts ir tukšs

Pārbaudiet tukšo sarakstu, izmantojot len()

Apskatīsim, kā mēs varam pārbaudīt, vai saraksts ir tukšs vai nav, mazāk pitoniskā veidā. Mums vajadzētu izvairīties no šāda veida nepārprotami pārbaudot secību vai sarakstu

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

Izvade:

Empty List 

Laika sarežģītība: O(n)
Palīgtelpa: O(n), kur n ir saraksta garums

Pārbaudiet tukšo sarakstu, izmantojot netiešos Būla vērtības

Tagad apskatīsim pitoniskāku veidu, kā pārbaudīt, vai saraksts nav tukšs. Šī pārbaudes metode ir netieša pārbaudes veids un vairāk Tas ir vēlams nekā iepriekšējais .

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

Izvade:

The list is Empty 

Laika sarežģītība: O(n)
Palīgtelpa: O(n), kur n ir saraksta garums

Pārbaudiet tukšo sarakstu, izmantojot PEP 8 ieteikto metodi

Šī ir vēl viena metode, kas ļauj mums noteikt, vai Python saraksts ir tukšs. Pitoniskākā metode tā pārbaudei ir parādīta zemāk.

Python3




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

Izvade:

list is empty 

Laika sarežģītība: O(1)
Palīgtelpa: O(1)

Dotā saraksta salīdzināšana ar tukšu sarakstu, izmantojot operatoru !=

Norādītais Python kods pārbauda, ​​vai saraksts lis1> ir tukšs vai neizmanto if> paziņojums, apgalvojums. Ja saraksts nav tukšs, tas tiek izdrukāts Saraksts nav tukšs; pretējā gadījumā tiek drukāts tukšs saraksts. Tas tiek panākts, salīdzinot sarakstu ar tukšu sarakstu, izmantojot nevienlīdzības operatoru !=> . Konkrētajā gadījumā, kur lis1> tiek inicializēts kā tukšs saraksts, nosacījums tiek novērtēts kā nepatiess, kā rezultātā tiek iegūts tukšs saraksts.

Python3




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

Izvade

Empty List 

Dotā saraksta salīdzināšana ar tukšo sarakstu, izmantojot == operatoru

Nākamais if> paziņojumā novērtēts, vai lis1> ir vienāds ar tukšu sarakstu, ko apzīmē ar []> . Ja nosacījums ir patiess, kas nozīmē, ka saraksts patiešām ir tukšs, programma konsolē izdrukā tukšo sarakstu. Ja nosacījums ir nepatiess, norādot, ka saraksts nav tukšs, programma tā vietā drukā Saraksts nav tukšs.

Python3




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

Izvade

Empty List 

Šīs pieejas priekšrocība ir tā, ka tā ir kodolīga un viegli saprotama. Tas parasti ir arī ātrāks nekā citas pieejas, kas ietver saraksta elementu cilpu.

Pārbaudiet tukšo sarakstu, izmantojot mēģināt/izņemot

Lai pārbaudītu, vai saraksts ir tukšs vai neizmanto try/izņemot Python, varat izmantot šādu algoritmu:

Algoritms:

Inicializējiet sarakstu. Mēģiniet piekļūt pirmajam saraksta elementam, izmantojot lst[0]. Ja iepriekš minētā darbība rada IndexError izņēmumu, saraksts ir tukšs. Pretējā gadījumā saraksts nav tukšs. Rīkojieties ar izņēmumu, izdrukājot tukšu sarakstu. Šeit ir norādīta iepriekš minētā algoritma Python koda ieviešana:

Python3




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

Izvade

Empty List 

Laika sarežģītība: O(1), jo piekļuve pirmajam saraksta elementam prasa pastāvīgu laiku.
Palīgtelpa: O(1), jo mēs neizmantojam papildu vietu šīs darbības veikšanai.

Pārbaudiet tukšo sarakstu, izmantojot modulis Numpy

1. piemērs: Ja mums ir NumPy masīvs, tad pareizā metode visos gadījumos ir izmantot if .Izmērs . Šis izmērs pārbauda masīvu lielumu un attiecīgi atgriež True vai False. Piemērs:

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

Izvade:

Empty 

2. piemērs : šajā piemērā parādīts otrs gadījums ar vienu 0 elementu, kas iepriekšējos gadījumos neizdevās.

Python3




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

Izvade:

Not Empty