Ce face set (mulțimi)
Un set păstrează fiecare valoare o singură dată. Dacă adaugi un element care există deja, nu se întâmplă nimic. Verificarea cu in este foarte rapidă, chiar și pentru milioane de elemente.
Mulțimile nu au ordine și nici indici: nu poți scrie multime[0]. Ordinea în care sunt afișate elementele poate diferi de la o rulare la alta, așa că sortează-le dacă ai nevoie de ordine.
Operațiile din matematică au operatori: | reuniune, & intersecție, - diferență, ^ diferență simetrică. Mulțimea goală se scrie set(), pentru că {} este un dicționar gol.
Parametri
| Parametru | Descriere |
|---|---|
iterabil |
Opțional, pentru set(). Colecția din care se iau elementele unice. |
Ce returnează
set() returnează o mulțime nouă.
Exemple
Exemplul 1: Eliminarea duplicatelor
vizite = ["Iași", "Cluj", "Iași", "Brașov", "Cluj"]
unice = set(vizite)
print(len(unice), "orașe diferite")
print(sorted(unice))
Rezultat
3 orașe diferite
['Brașov', 'Cluj', 'Iași']
Exemplul 2: Operații cu mulțimi
ana = {"python", "sql", "excel"}
mihai = {"python", "java", "excel"}
print(sorted(ana & mihai))
print(sorted(ana | mihai))
print(sorted(ana - mihai))
Rezultat
['excel', 'python']
['excel', 'java', 'python', 'sql']
['sql']
Exemplul 3: Adăugare și verificare
etichete = set()
etichete.add("nou")
etichete.add("reducere")
etichete.add("nou")
print(len(etichete))
print("reducere" in etichete)
Rezultat
2
True
Greșeli frecvente
- Scrii
{}pentru o mulțime goală, dar obții un dicționar. Foloseșteset(). - Te bazezi pe ordinea elementelor la afișare. Ordinea unui
setnu este garantată; foloseștesorted().
Comenzi înrudite
set.add(): Adaugă un element într-o mulțime; dacă există deja, nu se întâmplă nimic.set.union() și set.update(): Reuniunea mulțimilor: toate elementele care apar în cel puțin una dintre ele.frozenset(): O mulțime imutabilă, care poate fi cheie de dicționar sau element al altei mulțimi.list (liste): Lista este o colecție ordonată și modificabilă de elemente, scrisă între paranteze drepte.