Join Two Sets
There are several ways to join two or more sets in Python.
You can use the union()
method that returns a new set containing all items from both sets, or the update()
method that inserts all the items from one set into another:
Example
The union()
method returns a new set with all items from both sets:
set1 = {“a”, “b” , “c”}
set2 = {1, 2, 3}
set3 = set1.union(set2)
print(set3)
Output:
{‘a’, 1, 3, ‘b’, ‘c’, 2}
Example
The update()
method inserts the items in set2 into set1:
set1 = {“a”, “b” , “c”}
set2 = {1, 2, 3}
set1.update(set2)
print(set1)
Output:
{2, ‘a’, ‘b’, 1, ‘c’, 3}
Note: Both union()
and update()
will exclude any duplicate items.
Keep ONLY the Duplicates
The intersection_update()
method will keep only the items that are present in both sets.
Example
Keep the items that exist in both set x
, and set y
:
x = {“apple”, “banana”, “cherry”}
y = {“google”, “microsoft”, “apple”}
x.intersection_update(y)
print(x)
Output:
{‘apple’}
The intersection()
method will return a new set, that only contains the items that are present in both sets.
Example
Return a set that contains the items that exist in both set x
, and set y
:
x = {“apple”, “banana”, “cherry”}
y = {“google”, “microsoft”, “apple”}
z = x.intersection(y)
print(z)
Output:
{‘apple’}
Keep All, But NOT the Duplicates
The symmetric_difference_update()
method will keep only the elements that are NOT present in both sets.
Example
Keep the items that are not present in both sets:
x = {“apple”, “banana”, “cherry”}
y = {“google”, “microsoft”, “apple”}
x.symmetric_difference_update(y)
print(x)
Output:
{‘google’, ‘banana’, ‘microsoft’, ‘cherry’}
The symmetric_difference()
method will return a new set, that contains only the elements that are NOT present in both sets.
Example
Return a set that contains all items from both sets, except items that are present in both:
x = {“apple”, “banana”, “cherry”}
y = {“google”, “microsoft”, “apple”}
z = x.symmetric_difference(y)
print(z)
Output:
{‘google’, ‘banana’, ‘microsoft’, ‘cherry’}