Python Set


Sets are an unordered collection of unique elements in Python. They are highly useful for eliminating duplicates and performing mathematical set operations like union, intersection, and difference. This tutorial will guide you through the basic concepts of sets, their operations, and provide practice questions with examples.

Table of Contents:

  • Creating Sets
  • Adding and Removing Elements
  • Set Operations
  • Set Methods
  • Practice Questions


Creating Sets:
Sets can be created using curly braces ({}) or by using the set() function.

Let's see some examples:

# Creating an empty set
empty_set = set()
print(empty_set)  # Output: set()

# Creating a set with elements
fruits = {'apple', 'banana', 'mango'}
print(fruits)  # Output: {'banana', 'mango', 'apple'}
  • Adding and Removing Elements:
    To add elements to a set, you can use the add() method. To remove elements, you can use the remove() or discard() methods. The difference between remove() and discard() is that remove() raises a KeyError if the element is not found, while discard() does nothing.
    # Adding elements to a set
    print(fruits)  # Output: {'banana', 'mango', 'apple', 'orange'}
    # Removing elements from a set
    print(fruits)  # Output: {'mango', 'apple', 'orange'}
    print(fruits)  # Output: {'mango', 'orange'}
  • Set Operations:
    Sets support various operations such as union, intersection, difference, and symmetric difference.
    # Union of sets
    set1 = {1, 2, 3}
    set2 = {3, 4, 5}
    union_set = set1.union(set2)
    print(union_set)  # Output: {1, 2, 3, 4, 5}
    # Intersection of sets
    intersection_set = set1.intersection(set2)
    print(intersection_set)  # Output: {3}
    # Difference of sets
    difference_set = set1.difference(set2)
    print(difference_set)  # Output: {1, 2}
    # Symmetric difference of sets
    symmetric_diff_set = set1.symmetric_difference(set2)
    print(symmetric_diff_set)  # Output: {1, 2, 4, 5}
  • Set Methods:
    Sets provide several methods to perform different operations. Some commonly used methods include len(), clear(), copy(), issubset(), issuperset(), and pop().
    Here are some examples:
    fruits = {'apple', 'banana', 'mango'}
    # Get the length of a set
    print(len(fruits))  # Output: 3
    # Clear the set
    print(fruits)  # Output: set()
    # Copy a set
    fruits = {'apple', 'banana', 'mango'}
    fruits_copy = fruits.copy()
    print(fruits_copy)  # Output: {'banana', 'mango', 'apple'}
    # Check if a set is a subset or superset of another set
    set1 = {1, 2, 3}
    set2 = {1, 2, 3, 4, 5}
    print(set1.issubset(set2))  # Output: True
    print(set2.issuperset(set1))  # Output: True
    # Remove and return an arbitrary element from the set
    element = fruits.pop()
    print(element)  # Output: 'banana'
    print(fruits)  # Output: {'mango', 'apple'}


Practice Questions: Now, let's practice with some questions:


Question 1: Create a set named countries with the following elements: 'USA', 'Canada', 'Germany', 'Japan'.

Question 2: Add the element 'France' to the countries set.

Question 3: Remove the element 'Japan' from the countries set.

Question 4: Create another set named european_countries with the elements: 'Germany', 'France', 'Italy'.

Question 5: Find the union of the countries and european_countries sets.

Question 6: Find the intersection of the countries and european_countries sets.

Question 7: Check if countries is a superset of european_countries.

Question 8: Remove an arbitrary element from the countries set using the appropriate method.


Question 1:

pythonCopy code

countries = {'USA', 'Canada', 'Germany', 'Japan'}

Question 2:


Question 3:


Question 4:

european_countries = {'Germany', 'France', 'Italy'}

Question 5:

union_set = countries.union(european_countries)

Question 6:

intersection_set = countries.intersection(european_countries)

Question 7:


Question 8:


In this tutorial, we covered the basics of Python sets, including creating sets, adding and removing elements, performing set operations, and using set methods. Sets are versatile data structures that are helpful in various programming scenarios.