
L'unione tra due insiemi in Python
In questa lezione ti spiego come fare l'unione tra due insiemi nel linguaggio Python.
Ti faccio un esempio pratico.
Crea due insiemi nelle variabili A e B tramite la funzione set().
>>> A=set([1,2,3,4,5])
>>> B=set([4,5,6,7])
In alternativa puoi creare i due insiemi anche tramite le parentesi graffe, senza usare la funzione set(). Il risultato è lo stesso.
>>> A={1,2,3,4,5}
>>> B={4,5,6,7}
Puoi ottenere l'unione tra i due insiemi seguendo due strade alternative
L'operatore di unione A|B
Per unire i due insiemi puoi usare l'operatore |
A|B
Digita il comando C=A|B
>>> C=A|B
Il risultato è l'insieme unione A∪B
>>> C
{1, 2, 3, 4, 5, 6, 7}
L'insieme unione è composto da tutti gli elementi compresi nell'insieme A e/o nell'insieme B senza ripetizioni.
Il metodo union()
Puoi calcolare l'unione tra i due insiemi anche con il metodo .union()
A.union(B)
Digita questo comando A.union(B)
>>> D=A.union(B)
In alternativa puoi anche digitare set.union(A,B) sulla riga di comando. Il risultato finale è lo stesso.
>>> D=set.union(A,B)
Il risultato è l'insieme unione D=A∪B
>>> D
{1, 2, 3, 4, 5, 6, 7}
L'insieme unione D è composto da tutti gli elementi degli insiemi A e B senza duplicazioni.
Qual è la differenza tra l'operatore | e il metodo union()? L'operatore | e il metodo .union() sono due modi alternativi per ottenere l'unione tra due insiemi. Il metodo .union() ha però il vantaggio d'essere più generico perché puoi applicarlo anche tra set e oggetti iterabili. Ad esempio, crea un insieme A e una lista E
>>> A=set([1,2,3,4,5])
>>> E=[4,5,6,7]
Usando il metodo .union() sulla variabile set ottieni l'unione tra l'insieme (A) e la lista (E). Il risultato è un insieme.
>>> A.union(E)
{1, 2, 3, 4, 5, 6, 7}
Viceversa, se utilizzi l'operatore dell'unione A|E il linguaggio Python restituisce un errore, perché l'operatore | puoi applicarlo solo tra due variabili set ossia tra due insiemi.
>>> A|E
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
TypeError: unsupported operand type(s) for |: 'set' and 'list'
Con il metodo union() puoi anche unire più insiemi.
Ad esempio, definisci tre insiemi A, B e C
>>> A=set([1,2,3,4,5])
>>> B=set([4,5,6,7])
>>> C=set([7,8,9])
Poi unisci i tre insiemi usando il metodo union() su uno dei tre insiemi, indicando gli altri insiemi come argomento del metodo
>>> D=A.union(B,C)
Il risultato è l'insieme unione D=A∪B∪C
>>> D
{1, 2, 3, 4, 5, 6, 7, 8, 9}
Adesso hai una panoramica abbastanza ampia sull'unione di due o più insiemi nel linguaggio Python.