WHAT IS Set Data Type in Python?


Heather Bennett

Python is a versatile programming language that offers a wide range of data types to store and manipulate different kinds of information. One such data type is the set. In this tutorial, we will explore the set data type in Python and understand its characteristics and uses.

What is a Set?

A set is an unordered collection of unique elements in Python. It is similar to a mathematical set where each element occurs only once.

To create a set in Python, we use curly braces ({}) or the built-in set() function. Let’s look at some examples:

# Creating an empty set
my_set = {}
print(my_set)  # Output: {}

# Creating a non-empty set
my_set = {1, 2, 3}
print(my_set)  # Output: {1, 2, 3}

# Creating a set using the set() function
my_set = set([4, 5, 6])
print(my_set)  # Output: {4, 5, 6}

Characteristics of Sets

Sets have some interesting characteristics:

  • Unordered: The elements in a set are not stored in any particular order.
  • Unique Elements: Each element in a set occurs only once. If you try to add duplicate elements to a set, they will be ignored.
  • Mutable: Sets are mutable, meaning you can add or remove elements after creation.
  • No Indexing: Unlike lists or tuples, sets do not support indexing or slicing.

These characteristics make sets useful in various scenarios, such as removing duplicate elements from a list, performing mathematical operations like union and intersection, and checking for membership.

Set Operations

Python provides several built-in methods and operators to perform operations on sets:

  • Add Elements: You can add elements to a set using the add() method or the update() method to add multiple elements at once.
  • Remove Elements: The remove() method removes a specific element from the set. If the element is not present, it raises a KeyError. To avoid this error, you can use the discard() method instead.
  • Merge Sets: You can merge two sets using the | operator or the .union() method.

    This operation returns a new set containing all unique elements from both sets.

  • Difference of Sets: The difference between two sets can be obtained using the operator or the .difference() method. It returns a new set with elements present in the first set but not in the second set.
  • Intersection of Sets:The intersection of two sets can be obtained using the & operator or the .intersection() method. This operation returns a new set with elements that are common to both sets.

An Example: Removing Duplicates Using Sets

Sets are particularly useful when it comes to removing duplicate elements from a list. Let’s see an example:

# Creating a list with duplicate elements
my_list = [1, 2, 3, 4, 3, 2, 1]

# Converting the list to a set
my_set = set(my_list)

# Converting the set back to a list
new_list = list(my_set)

print(new_list)  # Output: [1, 2, 3, 4]

In this example, we first convert the list my_list to a set my_set. Since sets only store unique elements, all duplicate elements are automatically removed. Finally, we convert the set back to a list using the list() function.


The set data type in Python provides a convenient way to work with collections of unique elements. It offers various operations for manipulating sets and can be useful in different programming scenarios. Understanding sets and their characteristics expands your options when it comes to efficient data manipulation in Python.

Note: If you need ordered collection of elements with duplicates allowed, consider using the list or tuple data types instead.

I hope this tutorial has provided you with a clear understanding of sets in Python and how they can be used effectively. Happy coding!

Discord Server - Web Server - Private Server - DNS Server - Object-Oriented Programming - Scripting - Data Types - Data Structures

Privacy Policy