Python -Join Sets
Join Sets
There are several ways to join two or more sets in Python.
Theunion()
andupdate()
methods joins all items from both sets.
Theintersection()
method keeps ONLY the duplicates.
Thedifference()
method keeps the items from the first set that are not in the other set(s).
Thesymmetric_difference()
method keeps all items EXCEPT the duplicates.
Union
Theunion()
method returns a new set with all items from both sets.
Example
Join set1 and set2 into a new set:
set2 = {1, 2, 3}
set3 = set1.union(set2)
print(set3)
You can use the|
operator instead of theunion()
method, and you will get the same result.
Example
Use|
to join two sets:
set2 = {1, 2, 3}
set3 = set1 | set2
print(set3)
Join Multiple Sets
All the joining methods and operators can be used to join multiple sets.
When using a method, just add more sets in the parentheses, separated by commas:
Example
Join multiple sets with theunion()
method:
set2 = {1, 2, 3}
set3 = {"John", "Elena"}
set4 = {"apple", "bananas", "cherry"}
myset = set1.union(set2, set3, set4)
print(myset)
When using the|
operator, separate the sets with more|
operators:
Example
Use|
to join two sets:
set2 = {1, 2, 3}
set3 = {"John", "Elena"}
set4 = {"apple", "bananas", "cherry"}
myset = set1 | set2 | set3 |set4
print(myset)
Join a Set and a Tuple
Theunion()
method allows you to join a set with other data types, like lists or tuples.
The result will be a set.
Example
Join a set with a tuple:
y = (1, 2, 3)
z = x.union(y)
print(z)
Note: The |
operator only allows you to join sets with sets, and not with other data types like you can with the union()
method.
Update
Theupdate()
method inserts all items from one set into another.
Theupdate()
changes the original set, and does not return a new set.
Example
Theupdate()
method inserts the items in set2 into set1:
set2 = {1, 2, 3}
set1.update(set2)
print(set1)
Note: Bothunion()
andupdate()
will exclude any duplicate items.
Intersection
Keep ONLY the duplicates
Theintersection()
method will return a new set, that only contains the items that are present in both sets.
Example
Join set1 and set2, but keep only the duplicates:
set2 = {"google", "microsoft", "apple"}
set3 = set1.intersection(set2)
print(set3)
You can use the&
operator instead of theintersection()
method, and you will get the same result.
Example
Use&
to join two sets:
set2 = {"google", "microsoft", "apple"}
set3 = set1 & set2
print(set3)
Note: The&
operator only allows you to join sets with sets, and not with other data types like you can with theintersection()
method.
Theintersection_update()
method will also keep ONLY the duplicates,but it will change the original set instead of returning a new set.
Example
Keep the items that exist in bothset1
, andset2
:
set2 = {"google", "microsoft", "apple"}
set1.intersection_update(set2)
print(set1)
The valuesTrue
and1
are considered the same value. The same goes forFalse
and0
.
Example
Join sets that contains the valuesTrue
,False
,1
, and0
, and see what is considered as duplicates:
set2 = {False, "google", 1, "apple", 2, True}
set3 = set1.intersection(set2)
print(set3)
Difference
Thedifference()
method willreturn a new set that will contain only the items from the first set that are not present in the other set.
Example
Keep all items from set1 that are not in set2:
set2 = {"google", "microsoft", "apple"}
set3 = set1.difference(set2)
print(set3)
You can use the-
operator instead of thedifference()
method, and you will get the same result.
Example
Use-
to join two sets:
set2 = {"google", "microsoft", "apple"}
set3 = set1 - set2
print(set3)
Note: The-
operator only allows you to join sets with sets, and not with other data types like you can with thedifference()
method.
Thedifference_update()
method will also keep the items from the first set that are not in the other set,but it will change the original set instead of returning a new set.
Example
Use thedifference_update()
method to keep the items that are not present in both sets:
set2 = {"google", "microsoft", "apple"}
set1.difference_update(set2)
print(set1)
Symmetric Differences
Thesymmetric_difference()
method will keep only the elements that are NOT present in both sets.
Example
Keep the items that are not present in both sets:
set2 = {"google", "microsoft", "apple"}
set3 = set1.symmetric_difference(set2)
print(set3)
You can use the^
operator instead of thesymmetric_difference()
method, and you will get the same result.
Example
Use^
to join two sets:
set2 = {"google", "microsoft", "apple"}
set3 = set1 ^ set2
print(set3)
Note: The^
operator only allows you to join sets with sets, and not with other data types like you can with thesymmetric_difference()
method.
Thesymmetric_difference_update()
method will also keep all but the duplicates,but it will change the original set instead of returning a new set.
Example
Use thesymmetric_difference_update()
method to keep the items that are not present in both sets:
set2 = {"google", "microsoft", "apple"}
set1.symmetric_difference_update(set2)
print(set1)