Sobes.tech
Junior

Vorbiți despre tipul de date set.

sobes.tech AI

Răspuns de la AI

Tipul de date set în Python reprezintă o secvență nesortată de elemente unice.

Proprietăți principale:

  • Nesortată: Elementele dintr-un set nu au o ordine fixă.
  • Unic: Fiecare valoare poate fi prezentă în set doar o dată.
  • Modificabil: Seturile pot adăuga și elimina elemente (cu excepția frozenset).
  • Elementele trebuie să fie hash-abile: Sunt suportate tipuri de date imutabile (numere, șiruri, tuple). Tipurile mutabile (liste, dicționare) nu pot fi folosite.

Creare:

# Crearea unui set gol
set_gol = set()

# Crearea unui set dintr-o listă
lista_mea = [1, 2, 3, 2, 4]
set_din_lista = set(lista_mea) # set_din_lista va fi {1, 2, 3, 4}

# Crearea unui set folosind acolade
set_direct = {5, 6, 7}

Operații principale:

Operație Metodă Descriere
Adăugare element add(element) Adaugă element în set.
Ștergere element remove(element) Șterge element. Aruncă eroare dacă nu există.
Ștergere element (sigur) discard(element) Șterge element. Nu face nimic dacă nu există.
Uniune union(), ` `
Intersecție intersection(), & Returnează un nou set cu elementele comune.
Diferență difference(), - Elementele primului care nu sunt în al doilea.
Diferență simetrică symmetric_difference(), ^ Elementele care sunt doar într-unul dintre seturi.
Verificare prezență in Valoare booleană, dacă elementul este în set.

Exemple de utilizare:

set1 = {1, 2, 3, 4}
set2 = {3, 4, 5, 6}

# Uniune
uniune = set1.union(set2) # uniune = {1, 2, 3, 4, 5, 6}

# Intersecție
intersectie = set1 & set2 # intersectie = {3, 4}

# Diferență
dif = set1 - set2 # dif = {1, 2}

# Verificare prezență
prezenta = 3 in set1 # prezenta = True

Aplicații în QA:

  • Căutarea duplicatelor în liste de date.
  • Compararea a două seturi de rezultate (de exemplu, așteptate și reale).
  • Filtrarea elementelor unice dintr-o secvență.
  • Verificarea prezenței unui element într-o colecție mare de date (căutare rapidă).

frozenset: Versiune imutabilă a unui set. Este utilizată atunci când este nevoie de un set imutabil (de exemplu, ca cheie într-un dicționar).