Python Sets have mathematical set operations like union, intersection, difference, and symmetric difference. You can do this operation using the operators or inbuilt methods.
See below Operator for set operations:
- | for union
- & for intersection
- – for difference
- ^ for symmetric difference

Python set operations examples
Simple example code.
Set Union, S1|S2 operation
Union is performed using | operator or using the union() method.
fib = {1, 1, 2, 3, 5, 8}
prime = {2, 3, 5, 7, 11}
print(fib | prime)
# or using method
res = fib.union(prime)
print(res)
Output: {1, 2, 3, 5, 7, 8, 11}
Set Intersection, S1&S2 operation
The intersection is performed using & operator using the intersection() method.
fib = {1, 1, 2, 3, 5, 8}
prime = {2, 3, 5, 7, 11}
print(fib & prime)
# or using method
res = fib.intersection(prime)
print(res)
Output: {2, 3, 5}
Set Difference, S1-S2 operation
The difference is performed using the – operator or using the difference() method.
fib = {1, 1, 2, 3, 5, 8}
prime = {2, 3, 5, 7, 11}
print(fib - prime)
# or using method
res = fib.difference(prime)
print(res)
Output: {8, 1}
Set Symmetric Difference, S2^S2 operation
The symmetric difference is performed using the ^ operator or using the symmetric_difference() method.
fib = {1, 1, 2, 3, 5, 8}
prime = {2, 3, 5, 7, 11}
print(fib ^ prime)
# or using method
res = fib.symmetric_difference(prime)
print(res)
Output: {1, 7, 8, 11}
Easy to understand
Operation | Notation | Meaning |
---|---|---|
Intersection | A ∩ B | all elements which are in both and |
Union | A ∪ B | all elements which are in either or (or both) |
Difference | A − B | all elements which are in but not in |
Complement | (or) | all elements which are not in |
Sets and frozen sets support the following operators –
key in s # containment check
key not in s # non-containment check
s1 == s2 # s1 is equivalent to s2
s1 != s2 # s1 is not equivalent to s2
s1 <= s2 # s1is subset of s2 s1 < s2 # s1 is proper subset of s2 s1 >= s2 # s1is superset of s2
s1 > s2 # s1 is proper superset of s2
s1 | s2 # the union of s1 and s2
s1 & s2 # the intersection of s1 and s2
s1 – s2 # the set of elements in s1 but not s2
s1 ˆ s2 # the set of elements in precisely one of s1 or s2
Do comment if you have any doubts or suggestions on this Python set basic tutorial.
Note: IDE: PyCharm 2021.3.3 (Community Edition)
Windows 10
Python 3.10.1
All Python Examples are in Python 3, so Maybe its different from python 2 or upgraded versions.

Degree in Computer Science and Engineer: App Developer and has multiple Programming languages experience. Enthusiasm for technology & like learning technical.
The visual for the set operations is totally incorrect. The labels look like they were swapped diagonally (i.e. intersection should be difference, and union should be symmetric union)…