Lavorare con i set Python
In Python, un set è una raccolta non ordinata di elementi univoci. I set sono utili quando devi memorizzare più valori ma non ti interessa l'ordine di tali valori e vuoi assicurarti che non ci siano elementi duplicati.
Creazione di set
Per creare un set, si usano le parentesi graffe {} o la funzione set()
. Ecco alcuni esempi:
# Using curly braces
my_set = {1, 2, 3, 4, 5}
# Using the set() function
another_set = set([1, 2, 3, 4, 5])
Aggiungere e rimuovere elementi
Per aggiungere elementi a un set, usa il metodo add()
. Per rimuovere elementi, puoi usare remove()
o discard()
. La differenza tra loro è che remove()
solleverà un KeyError se l'elemento non esiste, mentre discard()
no.
# Adding elements
my_set.add(6)
# Removing elements
my_set.remove(5) # Will raise KeyError if 5 is not in the set
my_set.discard(10) # Will not raise an error
Operazioni di set
I set Python supportano varie operazioni, come unione, intersezione, differenza e differenza simmetrica. Ecco come puoi usarli:
# Union
set1 = {1, 2, 3}
set2 = {3, 4, 5}
union_set = set1.union(set2) # or set1 | set2
# Intersection
intersection_set = set1.intersection(set2) # or set1 & set2
# Difference
difference_set = set1.difference(set2) # or set1 - set2
# Symmetric Difference
symmetric_difference_set = set1.symmetric_difference(set2) # or set1 ^ set2
Comprensioni di set
Proprio come le list comprehension, Python supporta anche le set comprehension. Queste consentono di creare set basati su iterabili esistenti. Ecco un esempio:
# Creating a set of squares
squares = {x ** 2 for x in range(10)}
Conclusione
I set sono un modo potente e flessibile per gestire raccolte di elementi univoci in Python. Capire come usare i set in modo efficace ti aiuterà a gestire i dati e a eseguire operazioni con efficienza e facilità.