GeeksforGeeks

List jest ważnym kontenerem w pythonie, ponieważ przechowuje elementy wszystkich datatypów jako kolekcję. Znajomość pewnych operacji na listach jest niezbędna w codziennym programowaniu. Ten artykuł omawia jedną z podstawowych operacji listy sposobów sprawdzania istnienia elementu na liście.

Metoda 1 : Naiwna metoda

W Naiwnej metodzie, jeden łatwo używa pętli, która iteruje przez wszystkie elementy, aby sprawdzić istnienie elementu docelowego. Jest to najprostszy sposób, aby sprawdzić istnienie elementu na liście.

Metoda 2 : Korzystanie in

Python in jest najbardziej konwencjonalny sposób, aby sprawdzić, czy element istnieje na liście, czy nie. Ten szczególny sposób zwraca True, jeśli element istnieje na liście i False, jeśli element nie istnieje na liście. Lista nie musi być posortowana, aby praktykować to podejście do sprawdzania.
Kod #1 : Demonstracja sprawdzania istnienia elementu na liście za pomocą metody Naive i 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")



Wyjście :

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

Metoda 3 : Użycie set() + in

Konwersja listy na zestaw, a następnie użycie w może być prawdopodobnie bardziej wydajne niż tylko użycie in. Ale posiadanie wydajności na plus ma również pewne negatywy. Jednym z nich jest to, że kolejność listy nie jest zachowana, a jeśli zdecydujesz się wziąć nową listę dla niego, trzeba będzie użyć dodatkowego miejsca. Inną wadą jest to, że zestaw nie zezwala na duplikaty, a zatem zduplikowane elementy zostaną usunięte z oryginalnej listy.

Metoda 4: Korzystanie sort() + bisect_left()

Konwencjonalny sposób wyszukiwania binarnego testowania istnienia elementu, stąd lista musi być najpierw posortowana, a zatem nie zachowuje kolejności elementów. bisect_left() zwraca pierwsze wystąpienie szukanego elementu i działa podobnie do funkcji lower_bound() w C++ STL.
Kod #2 : Demonstracja sprawdzania istnienia elementu na liście przy użyciu set() + in i 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")



Tagi artykułu :
Tagi związane z praktyką :

Dodaj komentarz

Twój adres e-mail nie zostanie opublikowany.