Python Set Methods – Complete List with Examples

Introduction

Python sets are one of the most useful built-in data structures for storing collections of unique values.

Sets are widely used in real-world applications such as removing duplicate records, managing unique user IDs, analyzing datasets, and performing operations like union and intersection.

What are Set Methods?

Set methods are built-in functions provided by Python that allow you to perform operations on set objects.

These methods help you:

  • Add items
  • Remove items
  • Combine sets
  • Find common elements
  • Create copies
  • Clear data
  • Compare sets

Example:


fruits = {"Apple", "Banana"}
fruits.add("Mango")
print(fruits)

Output:

{‘Apple’, ‘Banana’, ‘Mango’}

Here, add() is a set method.

Common Set Methods

Python provides many useful set methods.

Method Description
add() Adds a single item
update() Adds multiple items
remove() Removes a specified item
discard() Removes an item safely
pop() Removes a random item
clear() Removes all items
copy() Creates a copy of the set
union() Combines sets
intersection() Returns common elements
difference() Returns different elements
symmetric_difference() Returns non-common elements
issubset() Checks subset relationship
issuperset() Checks superset relationship
isdisjoint() Checks if sets have no common elements

add() Method

The add() method adds a single item to a set.

Syntax


set_name.add(item)

Example:


fruits = {"Apple", "Banana"}
fruits.add("Mango")
print(fruits)

Output:

{‘Apple’, ‘Banana’, ‘Mango’}

update() Method

The update() method adds multiple items to a set.

Syntax


set_name.update(iterable)

Example:


fruits = {"Apple"}
fruits.update(["Banana", "Mango"])
print(fruits)

Output:

{‘Apple’, ‘Banana’, ‘Mango’}

remove() Method

The remove() method removes a specified item.

Syntax


set_name.remove(item)

Example:


fruits = {"Apple", "Banana", "Mango"}
fruits.remove("Banana")
print(fruits)

Output:

{‘Apple’, ‘Mango’}

Important: If the item does not exist, Python raises a KeyError.

discard() Method

The discard() method removes an item safely.

Example:


fruits = {"Apple", "Banana"}
fruits.discard("Orange")
print(fruits)

Output:

{‘Apple’, ‘Banana’}

No error occurs.

pop() Method

The pop() method removes and returns a random item.

Example:


fruits = {"Apple", "Banana", "Mango"}
removed_item = fruits.pop()
print(removed_item)
print(fruits)

Possible Output:

Apple
{‘Banana’, ‘Mango’}

Since sets are unordered, the removed item may vary.

clear() Method

The clear() method removes all items from a set.

Example:


fruits = {"Apple", "Banana"}
fruits.clear()
print(fruits)

Output:

set()

copy() Method

The copy() method creates a duplicate copy of a set.

Example:


fruits = {"Apple", "Banana"}
new_fruits = fruits.copy()
print(new_fruits)

Output:

{‘Apple’, ‘Banana’}

union() Method

The union() method combines two or more sets and removes duplicates.

Syntax


set1.union(set2)

Example:


set1 = {1, 2, 3}
set2 = {3, 4, 5}
result = set1.union(set2)
print(result)

Output:

{1, 2, 3, 4, 5}

intersection() Method

The intersection() method returns elements present in both sets.

Example:


set1 = {1, 2, 3}
set2 = {2, 3, 4}
print(set1.intersection(set2))

Output:

{2, 3}

difference() Method

The difference() method returns elements that exist in the first set but not in the second.

Example:


set1 = {1, 2, 3}
set2 = {2, 3, 4}
print(set1.difference(set2))

Output:

{1}

symmetric_difference() Method

The symmetric_difference() method returns elements that are unique to each set.

Example:


set1 = {1, 2, 3}
set2 = {3, 4, 5}
print(set1.symmetric_difference(set2))

Output:

{1, 2, 4, 5}

issubset() Method

The issubset() method checks whether one set is a subset of another.

Example:


set1 = {1, 2}
set2 = {1, 2, 3, 4}
print(set1.issubset(set2))

Output:

True

issuperset() Method

The issuperset() method checks whether a set contains all elements of another set.

Example:


set1 = {1, 2, 3, 4}
set2 = {1, 2}
print(set1.issuperset(set2))

Output:

True

isdisjoint() Method

The isdisjoint() method checks whether two sets have no common elements.

Example:


set1 = {1, 2}
set2 = {3, 4}
print(set1.isdisjoint(set2))

Output:

True

Real-Life Example: Website User Registration

Suppose a website stores registered usernames.

Example:


users = {
    "john",
    "emma",
    "alex"
}

Add a new user:


users.add("mike")

Remove a user:


users.discard("alex")

Check if a user exists:


print("emma" in users)

Output:

True

Sets help ensure that usernames remain unique.

Real-Life Example: Student Enrollment

Example:


python_students = {
    "John",
    "Emma",
    "Alex"
}
java_students = {
    "Emma",
    "David",
    "John"
}

Find students enrolled in both courses:


print(
    python_students.intersection(
        java_students
    )
)

Output:

{‘Emma’, ‘John’}

This is useful for educational management systems.

Advantages of Set Methods

  • Easy to use
  • Fast execution
  • Automatically handles duplicates
  • Efficient for large datasets
  • Supports mathematical operations
  • Improves code readability

Common Mistakes

1. Using remove() for Missing Values

Incorrect:


fruits = {"Apple", "Banana"}
fruits.remove("Orange")

Error:

KeyError

Use discard() instead.

2. Expecting Ordered Results

Incorrect assumption:


fruits = {"Apple", "Banana", "Mango"}

Sets do not maintain order.

3. Using Indexes

Incorrect:


fruits[0]

Error:

TypeError

Sets do not support indexing.


fruits.pop()

The removed item is random.

Best Practices

1. Use add() for Single Values


users.add("john")

2. Use update() for Multiple Values


users.update(
    ["john", "emma"]
)

3. Use discard() for Safe Removal


users.discard("alex")

4. Use Set Operations for Comparisons


set1.intersection(set2)

This is cleaner and more efficient than manual loops.

5. Use copy() Before Making Changes


backup = users.copy()

This preserves the original data.

Conclusion

Set methods in Python provide powerful tools for managing and manipulating collections of unique values. Methods such as add(), update(), remove(), discard(), union(), intersection(), and difference() allow developers to perform complex operations with very little code.

Related Python Tutorials