GeeksforGeeks

List è un importante contenitore in python, poiché memorizza elementi di tutti i tipi di dati come una collezione. La conoscenza di certe operazioni di lista è necessaria per la programmazione giornaliera. Questo articolo discute una delle operazioni di base della lista di modi per controllare l’esistenza di un elemento nella lista.

Metodo 1: Metodo ingenuo

Nel metodo ingenuo, si usa facilmente un ciclo che itera attraverso tutti gli elementi per controllare l’esistenza dell’elemento di destinazione. Questo è il modo più semplice per controllare l’esistenza dell’elemento nella lista.

Metodo 2: Usare in

Python in è il modo più convenzionale per controllare se un elemento esiste o no nella lista. Questo particolare modo restituisce True se l’elemento esiste nella lista e False se l’elemento non esiste nella lista. La lista non ha bisogno di essere ordinata per praticare questo approccio di controllo.
Codice #1 : Dimostrazione per controllare l’esistenza di un elemento nella lista usando il metodo Naive e in

test_list =
print("Checking if 4 exists in list ( using loop ) : ")
for i in test_list:
if(i == 4) :
print ("Element Exists")
print("Checking if 4 exists in list ( using in ) : ")
if (4 in test_list):
print ("Element Exists")



Output :

Checking if 4 exists in list ( using loop ) : Element ExistsChecking if 4 exists in list ( using in ) : Element Exists

Metodo 3: Usare set() + in

Convertire la lista in set e poi usare in può essere più efficiente che usare solo in. Ma avere l’efficienza come vantaggio ha anche alcuni lati negativi. Uno di questi è che l’ordine della lista non è conservato, e se si sceglie di prendere una nuova lista per essa, si richiederebbe di usare spazio extra. Un altro svantaggio è che il set non permette la duplicazione e quindi gli elementi duplicati verrebbero rimossi dalla lista originale.

Metodo 4 : Usando sort() + bisect_left()

Il modo convenzionale di ricerca binaria per verificare l’esistenza dell’elemento, quindi la lista deve essere ordinata per prima e quindi non conserva l’ordine degli elementi. bisect_left() restituisce la prima occorrenza dell’elemento da trovare e ha un funzionamento simile a lower_bound() in C++ STL.
Codice #2 : Dimostrazione dell’esistenza di un elemento nella lista usando set() + in e sort() + bisect_left().

from bisect import bisect_left
test_list_set =
test_list_bisect =
print("Checking if 4 exists in list ( using set() + in) : ")
test_list_set = set(test_list_set)
if 4 in test_list_set :
print ("Element Exists")
print("Checking if 4 exists in list ( using sort() + bisect_left() ) : ")
test_list_bisect.sort()
if bisect_left(test_list_bisect, 4):
print ("Element Exists")



Article Tags :
Tag di pratica :

Lascia un commento

Il tuo indirizzo email non sarà pubblicato.