Čo sú množiny v Pythone a ako ich používať?



Zistite, čo sú množiny v Pythone, ako ich vytvárať spolu s rôznymi operáciami. Dozviete sa tiež o zmrazených množinách a ich vytváraní v Pythone.

Uloženie dát je niečo, čo je nevyhnutné pre každú doménu v dnešnom svete. Python poskytuje rôzne typy dátových štruktúr na usporiadanie vašich údajov a tieto dátové štruktúry sú ich podstatnou súčasťou . Niektoré zo všetkých dátových štruktúr dostupných v Pythone sú premenlivé a niektoré nemenné. V tomto článku budem diskutovať o jednej z týchto skupín, tj. Sady v Pythone sú dátové štruktúry, ktoré sú premenlivé, opakovateľné a neusporiadané. Tu je rýchly návod na všetko, čo bolo vysvetlené ďalej.

Čo je nastavené v Pythone?
Kedy použiť sady v Pythone?
Ako vytvoríte sadu?
Nastaviť operácie





Čo sú to zmrazené sady?

Začnime. :-)



Čo je nastavené v Pythone?

Sada je v zásade dátový typ pozostávajúci z kolekcie neusporiadaných prvkov. Tieto prvky môžu byť na rozdiel od iných typov údajov v akýchkoľvek množinách ,nie sú špecifické pre daný typ. Sady sú premenlivé (zmeniteľné) a neobsahujú opakované kópie prvkov. Hodnoty nastavenej arNeindexovaný, preto indexíng operácie nie je možné vykonať na súpravách.

Príklad:

My_Set = {1, 's', 7,8} tlač (My_Set)

Výkon: {„S“, 1, 7,8}



Výstup zobrazuje všetky prvky prítomné My_Set.

Poznámka: Sada ako celok je premenlivá, ale prvky množiny nie.

Teraz, keď viete, čo sú množiny v Pythone, poďme ďalej a pochopme, kedy súpravy použiť.

Kedy použiť sady v Pythone?

Sady v Pythone sa používajú, keď-

  • Na poradí údajov nezáleží
  • V dátových prvkoch nepotrebujete žiadne opakovania
  • Musíte vykonať matematické operácie, ako je spojenie, križovatka atď

Teraz poďme ďalej a uvidíme, ako vytvoriť sady v Pythone.

Ako vytvoríte množinu v Pythone?

Sady v Pythone je možné vytvoriť dvoma spôsobmi -

  • uzatváracie prvky do zložených zátvoriek
  • pomocou funkcie set ()

1. Použitie zložených zátvoriek:

Sady v Pythone sa vytvárajú pomocou zložených zátvoriek ({}).

 Príklad: 
My_Set = {1, 's', 7,8} tlač (My_Set)

Výkon: {„S“, 1, 7,8}

Ako vidíte, My_Set bol vytvorený.

2. Pomocou funkcie set ()

Sady v Pythone je možné vytvárať pomocou funkcie set ().

Príklad:

a = sada ({1, 'b', 6.9}) tlač (a)

Výkon: {1, 'b', 6,9}

S rovnakou funkciou môžete tiež vytvoriť prázdnu sadu.

Príklad:

Empty_Set = set () print (Empty_Set)

Výkon: sada ()

Vyššie uvedený výstup ukazuje, že bola vytvorená prázdna sada s názvom Empty_Set.

Do tejto prázdnej množiny môžete pridať prvky. Tomu sa budem venovať v nasledujúcich témach.

Nastaviť operácie

Na množinách je možné vykonať množstvo operácií, ako napríklad pridanie prvkov, odstránenie prvkov, zistenie dĺžky sady atď. Ak chcete vedieť, aké všetky metódy je možné na množinách použiť, môžete použiť tebe () funkcie.

Príklad:

My_Set = {1, 's', 7,8} dir (My_Set)

Výkon:

['__and __', '__ class __', '__ obsahuje __', '__ delattr __', '__ dir __', '__ doc __', '__ eq __', '__ formát __', '__ ge __', '__ getattribute__', '__gt__', '__hash __iand__ ',' __init__ ',' __init_subclass__ ',' __ior__ ',' __isub__ ',' __iter__ ',' __ixor__ ',' __le__ ',' __len__ ',' __lt__ ',' __ne__ ',' __new__ ',' __ne__ , '__rand__', '__reduce__', '__reduce_ex__', '__repr__', '__ror__', '__rsub__', '__rxor__', '__setattr__', '__sizeof__', '__str__', '__sub__', '__subc __xor__ ',' add ',' clear ',' copy ',' difference ',' difference_update ',' zahodiť ',' križovatka ',' intersection_update ',' isdisjoint ',' issubset ',' issuperset ',' pop ' , 'remove', 'symmetric_difference', 'symmetric_difference_update', 'union', 'update']

Výstup zobrazuje všetky metódy, ktoré je možné na množinách použiť. Niektoré z nich ďalej ukážem v tomto článku.

Zistenie dĺžky sady

Na zistenie dĺžky sady v Pythone môžete použiť funkciu len (). Táto funkcia prevezme názov súpravy ako parameter a vráti celočíselnú hodnotu, ktorá sa rovná počtu prvkov v súprave.

Príklad:

My_Set = {1, 's', 7,8} len (My_Set)

Výkon: 3

ako používať goto v pythone -

Ako vidíte na výstupe vyššie, bola vrátená hodnota 3, ktorá sa rovná počtu prvkov prítomných v My_Set. Teraz je tiež možné získať prístup k týmto prvkom, čo je uvedené nižšie.

Prístup k prvkom súpravy

K prvkom množiny nie je možné získať prístup pomocou čísel indexu, pretože ako bolo špecifikované vyššie, prvky množiny nie sú indexované. Preto, keď chcete získať prístup k prvkom množiny, môžete ich prehľadať a prejsť k ich prvkom.

Príklad:

My_Set = {1, 's', 7,8} pre x v My_Set: print (x)

Výkon:

s 1 7,8

Ako vidíte na výstupe, poradie sa líši od poradia prvkov dodávaných do súpravy. Je to tak preto, lebo prvky nie sú zoradené.

Pridanie prvkov do sady:

Prvky je možné pridať do sady pomocou dvoch funkcií, pridať () a aktualizácia () funkcie.

Funkcia add () pridáva jeden prvok do existujúcej množiny, ako je uvedené nižšie:

Príklad:

My_Set = {1, 's', 7,8} My_Set.add (3) My_Set

Výkon: {1, 3, 7.8, „s“}

Funkcia update () sa používa, ak chcete do existujúcej množiny pridať viac ako jeden prvok.

Príklad:

My_Set = {1, 's', 7.8} My_Set.update ([2,4.6,1, 'r']) My_Set

Výkon: {1, 2, 4,6, 7,8, „r“, „s“}

Ako vidíte na výstupe vyššie, funkcia update () berie zoznam 4 hodnôt a všetky hodnoty okrem 1 sú pridané do My_Set. Je to preto, že 1 je už v množine prítomný, a preto ho nemožno znova pridať.

Demontáž prvkov sady

Na odstránenie prvkov zo súpravy môžete použiť buď remove (), zahodiť () a pop () funkcie.

Funkcia remove () trvá jeden parameter, ktorým je položka, ktorá sa má zo sady odstrániť.

Príklad:

My_Set = {1, 2, 4.6, 7.8, 'r', 's'} My_Set.remove (2) print (My_Set)

Výkon: {1, 4.6, 7.8, „r“, „s“}

Ako vidíte, položka 2 bola zo súpravy odstránená pomocou funkcie remove (). V prípade, že zadáte nejaký prvok ako parameter na odstránenie (), ktorý v množine neexistuje, spôsobí to chybu.

Teraz, ak chcete odstrániť niektorý prvok z množiny, a ak si nie ste istí, či sa tento prvok v množine skutočne nachádza, alebo nie, môžete použiť funkciu discard (). Táto funkcia vezme prvok, ktorý má byť odstránený z množiny, ako parameter, ale v prípade, že prvok nie je prítomný, nevyvolá chybu.

Príklad:

My_Set = {1, 2, 4.6, 7.8, 'r', 's'} My_Set.discard (4.6) My_Set.discard ('i') print (My_Set)

Výkon: {1, 2, 7.8, „r“, „s“}

Vyššie uvedený výstup ukazuje, že 4.6 bol odstránený z My_Set, ale discard () nevyvolal chybu, keď som použil My_Set.discard („i“), aj keď „i“ nie je v mojej sade.

Funkcia pop () tiež odstráni prvky množiny, ale keďže je sada neusporiadaná, nebudete vedieť, ktorý prvok bol odstránený.

Príklad:

My_Set = {1, 2, 4,6, 7,8, 'r', 's'} My_Set.pop () print (My_Set)

Výkon: {2, 4.6, 7.8, „r“, „s“}

Výstup ukazuje, že pomocou pop () bol odstránený nejaký náhodný prvok, ktorý je v tomto prípade 1.

Teraz, ak chcete odstrániť všetky prvky nachádzajúce sa v množine, môžete použiť znak jasný() metóda.

Príklad:

My_Set = {1, 2, 4,6, 7,8, 'r', 's'} My_Set.clear () print (My_Set)

Výkon: sada ()

Ako vidíte na výstupe vyššie, My_Set je prázdna množina.

Ak chcete súbor úplne odstrániť, môžete použiť z kľúčové slovo.

Príklad:

My_Set = {1, 2, 4,6, 7,8, 'r', 's'} del My_Set print (My_Set)

Keď spustíte vyššie uvedený kód, spôsobí to chybu, pretože My_Set je odstránený.

Môžete tiež vykonať rôzne matematické operácie na množine, ako je zjednotenie, priesečník, rozdiel atď., O ktorých sa pojednáva nižšie.

Únia súprav

Spojenie množín znamená spojenie dvoch alebo viacerých množín do jednej množiny pridaním všetkých jedinečných prvkov prítomných v obidvoch množinách. To je možné vykonať dvoma spôsobmi:

java ako ukončiť program
  • Pomocou potrubia
  • Pomocou funkcie union ()

Pomocou symbolu potrubia:

Dve sady je možné spojiť pomocou | nasledujúci symbol:

Príklad:

a = {1, 2, 4,6, 7,8, 'r', 's'} b = {2,5, 'd', 'abc'} c = a | b tlač (a | b)

Výkon: {1, 2, 4.6, 5, 7.8, „r“, „abc“, „s“, „d“}

Ako vidíte, vo vyššie uvedenom výstupe je spojenie množiny a a množiny b uložené v novej množine c. Môžete zreťaziť viac ako dve množiny pomocou | symbol.

Príklad:

a = {1, 2, 4,6, 7,8, 'r', 's'} b = {2,5, 'd', 'abc'} c = {2,3,4,5} d = a | b | c tlač (d)

Výkon:

{1, 2, 3, 4, 4,6, 5, 7,8, 'abc', 'd', 'r', 's'}

Použitie metódy union ():

Ak chcete zreťaziť dve alebo viac množín, môžete použiť metódu union () nasledovne:

Príklad:

a = {1, 2, 4,6, 7,8, 'r', 's'} b = {2,5, 'd', 'abc'} c = {'m', 23,76,4,7} print (' Nastaviť U b = ', a.union (b)) print (' Nastaviť U b U c = ', a.union (b, c))

Výkon:

Nastaviť U b = {1, 2, 4,6, 5, 7,8, „r“, „abc“, „s“, „d“}

Nastaviť U b U c = {1, 2, 4,6, 5, 4,7, 7,8, „r“, 76, 23, „abc“, „m“, „s“, „d“}

Vyššie uvedený výstup ukazuje, že d je spojením množín a, b a c.

Priesečník množín

Priesečník dvoch alebo viacerých množín je nová množina, ktorá sa skladá iba zo spoločných prvkov prítomných v týchto množinách.

To je možné vykonať dvoma spôsobmi:

  • Pomocou symbolu „&“
  • Pomocou funkcie intersection ()

Pomocou symbolu „&“:

Priesečník dvoch alebo viacerých množín môžete určiť pomocou symbolu „&“ takto:

Príklad:

a = {1, 2,5, 4,6, 7,8, 'r', 's'} b = {2,5, 'd', 'abc'} c = {2,3,4,} tlač (a & b) tlač (a & b & c)

Výkon:

{2, 5} {2}

Vyššie uvedený výstup ukazuje spojenie množín a, b a c.

Pomocou funkcie intersection ():

Priesečník dvoch alebo viacerých množín môžete určiť pomocou funkcie intersection () takto:

Príklad:

a = {1, 2,5, 4,6, 7,8, 'r', 's'} b = {2,5, 'd', 'abc'} c = {2,3,4} tlač ('Nastaviť križovatka b = ', a. križovatka (b)) print (' Nastaviť križovatku b križovatka c = ', a. križovatka (b, c))

Výkon:

Nastaviť križovatku b = {2, 5}

Nastaviť križovatku b križovatku c = {2}

Vyššie uvedený výstup zobrazuje priesečník množín a, b a c.

Rozdiel súborov:

Rozdiel množín vytvára novú množinu pozostávajúcu z prvkov, ktoré sú prítomné iba v jednej z týchto množín. To znamená, že budú vrátené všetky prvky okrem bežných prvkov týchto množín.

To je možné vykonať dvoma spôsobmi:

  • Pomocou symbolu „-“
  • Použitie funkcie rozdielu ()

Pomocou symbolu „-“:

Ak chcete zistiť rozdiel medzi dvoma množinami pomocou symbolu „-“, môžete postupovať takto:

Príklad:

a = {1, 2,5, 4,6, 7,8, 'r', 's'} b = {2,5, 'd', 'abc'} c = {2,3,4} tlač (a-b-c)

Výkon: {1, 4.6, 7.8, „r“, „s“}

Výstup pozostáva zo všetkých prvkov množiny „a“ ​​okrem tých, ktoré sú prítomné v písmenách „b“ a „c“.

Použitie funkcie rozdielu ():

Rozdiel množín je možné určiť pomocou zabudovanej funkcie rozdielu () takto:

Príklad:

a = {1, 2,5, 4,6, 7,8, 'r', 's'} b = {2,5, 'd', 'abc'} c = {2,3,4} tlač ('Nastaviť - b = ', a.difference (b)) print (' Nastaviť a - b - c = ', a.difference (b, c))

Výkon:

Nastaviť a - b = {1, 4,6, 7,8, „r“, „s“}

Nastaviť a - b - c = {1, 4,6, 7,8, „r“, „s“}

čo robí tostring v jave

Vyššie uvedený výstup je výsledkom rozdielu pomocou funkcie rozdielu ().

Čo teraz, ak už vôbec nechcete meniť prvky svojej množiny, môžete využiť zmrazené množiny, o ktorých bude reč nižšie.

Čo je to zmrazená súprava?

Ukotvená množina v Pythone je množina, ktorej hodnoty nemožno meniť. To znamená, že je to nemenné na rozdiel od bežnej množiny, o ktorej som hovoril už skôr. Zmrazené množiny pomáhajú slúžiť ako kľúč v pároch slovníka a hodnoty.

Ako vytvoriť zmrazené sady?

Zmrazené sady je možné získať pomocou metódy frozenset (). Táto funkcia prevezme všetky opakovateľné položky a prevedie ich na nemenné.

Príklad:

a = {1, 2,5, 4,6, 7,8, 'r', 's'} b = frozenset (a) tlač (b)

Výkon: frozenset ({1, 2, 4,6, 5, 7,8, „r“, „s“})

Vyššie uvedený výstup pozostáva z množiny b, ktorá je zmrazenou verziou množiny a.

Prístup k prvkom zamrznutej súpravy

K prvkom zamrznutej množiny je možné získať prístup jej opakovaním:

Príklad:

b = frozenset ([1, 2, 4,6, 5, 7,8, 'r', 's']) pre x v b: print (x)

Výkon:

jeden
2
4.6
5
7.8
s

Vyššie uvedený výstup ukazuje, že pomocou slučky for boli postupne vrátené všetky prvky zmrazenej množiny b. Zmrazené množiny sú nemenné, preto nemôžete vykonávať operácie ako add (), remove (), update () atď. Dúfam, že máte prehľad o všetkom, čo bolo s vami zdieľané v tomto tutoriále. Týmto sa dostávame na koniec nášho článku o Setoch v Pythone. Určite cvičte čo najviac a obráťte sa na svoje skúsenosti.

Máte na nás otázku? Uveďte to prosím v sekcii komentárov v tomto blogu „Sety v Pythone“ a my sa vám ozveme čo najskôr.

Ak chcete získať podrobné informácie o Pythone a jeho rôznych aplikáciách, môžete sa zaregistrovať naživo s nepretržitou podporou a doživotným prístupom.