Junior
Povedzte o type dát set.
sobes.tech AI
Odpoveď od AI
Typ dátového typu set v Pythone predstavuje neporiadok neopakujúcich prvkov.
Hlavné vlastnosti:
- Neusporiadanosť: Prvky v množine nemajú pevne stanovený poradie.
- Nepopakovateľnosť: Každá hodnota môže byť v množine iba raz.
- Mennosť: Množiny môžu pridávať a odstraňovať prvky (okrem
frozenset). - Prvky musia byť hashovateľné: Podporujú sa nemenné typy dát (čísla, reťazce, n-tice). Menné typy (zoznamy, slovníky) nie je možné použiť.
Vytváranie:
# Vytvorenie prázdnej množiny
empty_set = set()
# Vytvorenie množiny zo zoznamu
my_list = [1, 2, 3, 2, 4]
set_from_list = set(my_list) # set_from_list bude {1, 2, 3, 4}
# Vytvorenie množiny s použitím zložených zátvoriek
direct_set = {5, 6, 7}
Hlavné operácie:
| Operácia | Metóda | Popis |
|---|---|---|
| Pridanie prvku | add(element) |
Pridá element do množiny. |
| Odstránenie prvku | remove(element) |
Odstráni element. Vyvolá chybu, ak nie je. |
| Odstránenie prvku | discard(element) |
Odstráni element. Nerobí nič, ak nie je. |
| Zlúčenie | union(), ` |
` |
| Prienik | intersection(), & |
Vráti novú množinu s spoločnými prvkami. |
| Rozdiel | difference(), - |
Vráti prvky prvej, ktoré nie sú v druhej. |
| Symetrická rozdielnosť | symmetric_difference(), ^ |
Vráti prvky, ktoré sú len v jednom z množín. |
| Kontrola prítomnosti | in |
Boolean, či je prvok v množine. |
Príklady použitia:
set1 = {1, 2, 3, 4}
set2 = {3, 4, 5, 6}
# Zlúčenie
union_set = set1.union(set2) # union_set = {1, 2, 3, 4, 5, 6}
# Prienik
intersection_set = set1 & set2 # intersection_set = {3, 4}
# Rozdiel
difference_set = set1 - set2 # difference_set = {1, 2}
# Kontrola prítomnosti
is_present = 3 in set1 # is_present = True
Použitie v QA:
- Vyhľadávanie duplikátov v zoznamoch dát.
- Porovnávanie dvoch súborov výsledkov (napríklad očakávaných a skutočných).
- Filtrácia unikátnych prvkov zo sekvencie.
- Kontrola prítomnosti prvku v veľkej kolekcii dát (rýchle vyhľadávanie).
frozenset: Nemenná verzia množiny. Používa sa, keď je potrebné mať nemennú množinu (napríklad ako kľúč v slovníku).