Zestaw Pythona to unikalny literał do filtrowania odrębnych wartości na liście lub w tablicy elementów. W przeciwieństwie do listy, słownika lub krotki Pythona nie akceptuje duplikatów. Może więc być cennym narzędziem do czyszczenia danych.

Ale jak możesz stworzyć zestaw i używać go w Pythonie? Wyjaśnimy to w tym poście.

Funkcje zestawów Pythona

Oprócz tego, że nie akceptuje duplikatów, literał zestawu ma inne cechy, które odróżniają go od innych typów danych. Oto niektóre z jego funkcji:

  • Jest niezmienny: oznacza to, że nie możesz zmienić wartości zestawu po jego utworzeniu.
  • Zestaw literałowy zwraca dynamiczny układ za każdym razem, gdy go tworzysz. W istocie elementy w zestawie są nieuporządkowane.
  • Ponieważ przedstawia nieuporządkowane elementy, w przeciwieństwie do literałów listowych i słownikowych, nie można uzyskać wartości zestawu za pomocą ich indeksów.

Jak stworzyć i używać zestawu Pythona

Teraz, gdy znasz już podstawowe funkcje zestawu Pythona. Zobaczmy, jak możesz go użyć w swoim programie.

instagram viewer

Używasz nawiasów klamrowych do tworzenia zestawu w Pythonie. A więc zestaw to lista elementów w nawiasach klamrowych oddzielonych przecinkami:

mySet = {1, 2, "MUO", "Google"}
print (mySet)
Wynik: {1, 2, „MUO”, „Google”}

Możesz również przekonwertować dowolny inny typ danych na zestaw. Na przykład poniższy kod konwertuje listę na zestaw:

myList = [1, 2, "MUO", "Google"]
mySet = set (myList)
print (mySet)
Wynik: {1, 2, „MUO”, „Google”}

Dla pewności możesz sprawdzić typ danych mySet:

myList = [1, 2, "MUO", "Google"]
mySet = set (myList)
print (typ (mySet))
Wynik:

Jak wspomnieliśmy wcześniej, zestaw nie akceptuje duplikatów. Ta funkcja może być przydatna, gdy chcesz wyczyścić tablicę, usuwając zduplikowane wartości.

Poniższy kod usuwa duplikaty z listy i przedstawia dane wyjściowe jako zestaw Pythona:

myList = [1, 2, 2 "MUO", "MUO", "Google", "Google"]
mySet = set (myList)
print (mySet)
Wynik: {1, 2, „MUO”, „Google”}

Aby dokładniej zademonstrować funkcję filtrowania zestawu, kiedy drukujesz długość zestawu, nie zlicza zduplikowanych wartości:

mySet = {1, 2, 2, "MUO", "MUO", "Google", "Google"}
print (len (mySet))
Wyjście: 4

Aby zobaczyć lepszy przypadek użycia zestawu, usuńmy duplikaty w poniższej tablicy. To jak odpytywanie unikalnych kluczy w tablicy.

Aby to zrobić, przekonwertuj słownik na zestaw:

myDiction = {
„Mango”: 2, „Pomarańczowy”: 2, „marchewka”: 2, „MUO”: „tech”,
„MUO”: „sieć”, „Google”: „wyszukiwarka”, „Google”: „wyszukiwarka”
}
uniqueSet = set (myDiction)
print ("To są unikalne klucze: {}". format (uniqueSet))
Wynik: są to unikalne klucze: {'Google', 'Mango', 'MUO', 'Orange', 'carrot'}

Powyższa konwersja automatycznie usuwa zduplikowane elementy z tablicy.

Możesz zmodyfikować powyższy kod używając pętli for aby było jaśniej:

dla unikatów w uniqueSet:
drukuj (unikaty)

Możesz również połączyć dwa zestawy za pomocą unia() metoda:

setA = {1, 3, 5}
setB = {1, 4, 6}
newSet = setA.union (setB)
print (newSet)
Wyjście: {1, 3, 4, 5, 6}

Jednak powyższy kod łączy dwa zestawy i usuwa zduplikowane wartości.

Alternatywnie możesz użyć rury | funkcja do łączenia zestawów w Pythonie:

setA = {1, 3, 5}
setB = {1, 4, 6}
newSet = setA | setB
print (newSet)
Wyjście: {1, 3, 4, 5, 6}

Możesz również znaleźć różnicę między dwoma zestawami w Pythonie:

setA = {1, 3, 5}
setB = {2, 4, 5,}
print (setA.difference (setB))
Wynik: {1, 3}

Możesz znaleźć symetryczną różnicę między zestawami A i B. Ta metoda zwraca elementy w obu zestawach, ale wyklucza ich przecięcia. Zobaczmy, jak to działa:

setA = {1, 3, 5}
setB = {2, 4, 5,}
print (setA ^ setB)
Wyjście: {1, 2, 3, 4}

Alternatywnie możesz użyć symmetric_difference () metoda:

setA = {1, 3, 5}
setB = {2, 4, 5,}
print (setA.symmetric_difference (zestawB))
Wyjście: {1, 2, 3, 4}

Zobaczmy również, jak możesz znaleźć przecięcie zestawów poniżej:

setA = {1, 3, 5}
setB = {1, 4, 6}
setC = {1, 5, 4}
newSet = setA.intersection (setB, setC)
print (newSet)
Wynik: {1}

Kiedy możesz dołącz do listy w Pythonie, nie możesz zrobić tego samego dla zestawu Pythona. Możesz jednak dodać element na końcu zestawu za pomocą Dodaj funkcjonować.

Ale Python Dodaj funkcja przyjmuje jeden argument, więc możesz dodać tylko krotkę do zestawu. Zwraca zagnieżdżony zestaw:

setA = {1, 3, 5} setC = {1, 3}
newSet = 1, 6
setC.add (nowy zestaw)
print (setC)
Wynik: {1, (1, 6), 3}

Zestaw Pythona używa isdisjoint () metoda sprawdzania, czy dwa zestawy są rozłączne. Następnie zwraca wartość logiczną:

setA = {1, 3, 5}
setB = {1, 4, 6}
findDisjoint = setA.isdisjoint (setB)
print ("To {}, że zbiórA jest rozłączeniem z B" .format (findDisjoint))
Wynik: Fałszem jest, że setA jest rozłącznym elementem B

Aby sprawdzić, czy zestaw jest podzbiorem innego, zamień isdisjoint () z issubset ():

findSubset = setA.issubset (setB)

Możesz usunąć element z zestawu:

setA = {1, 3, 5}
setA.remove (5)
print (zestawA)
Wynik: {1, 3}

Plik jasny() metoda czyści elementy w zestawie i zwraca pusty zestaw:

setA = {1, 3, 5}
setA.clear ()
print (zestawA)
Wyjście: set ()

Możesz usunąć dowolny element z zestawu i zwrócić jego wartość przy użyciu set.pop () metoda:

setA = {1, 3, 5}
print (setA.pop ())

Możesz również zaktualizować zestaw Pythona za pomocą metody update ():

setA = {1, 'b'}
setB = {2, 4, 5,}
print (setA.update (setB))
print (zestawA)
Wynik: {1, 2, 4, 5, „b”}

Pobaw się z zestawami Pythona

Chociaż widzieliśmy, jak można użyć zestawu w Pythonie, nadal istnieją inne praktyczne sposoby zastosowania go w kodzie. Jak widzieliście, może się przydać nawet podczas czyszczenia danych w Pythonie.

Oprócz zestawu inne typy danych lub tablice Pythona mają wiele zastosowań i różne aplikacje. Spróbuj się z nimi bawić, aby lepiej się z nimi zapoznać.

E-mail
Jak tablice i listy działają w Pythonie

Tablice i listy to jedne z najbardziej przydatnych struktur danych w programowaniu - chociaż niewiele osób wykorzystuje je w pełni.

Czytaj dalej

Powiązane tematy
  • Programowanie
  • Pyton
O autorze
Idowu Omisola (60 opublikowanych artykułów)

Idowu jest pasjonatem wszystkiego, co inteligentne technologie i produktywność. W wolnym czasie bawi się kodowaniem, nudzi się szachownicą, ale uwielbia też od czasu do czasu oderwać się od rutyny. Jego pasja do pokazywania ludziom drogi wokół nowoczesnych technologii motywuje go do pisania więcej.

Więcej od dostawcy Idowu Omisola

Zapisz się do naszego newslettera

Dołącz do naszego biuletynu, aby otrzymywać wskazówki techniczne, recenzje, bezpłatne e-booki i ekskluzywne oferty!

Jeszcze jeden krok…!

Potwierdź swój adres e-mail w wiadomości e-mail, którą właśnie wysłaliśmy.

.