Skip to content
Related Articles

Related Articles

Improve Article
Python | remove() and discard() in Sets
  • Last Updated : 28 Dec, 2017

In this article, we will see how to remove an element in a set, using the discard() and remove() method. We will also learn the difference between the two methods, although both of them produce the same results.

Examples:

Input : set = ([10, 20, 26, 41, 54, 20])
Output : {41, 10, 26, 54}

Input : set = (["ram", "aakash", "kaushik", "anand", "prashant"])
Output : {'ram', 'prashant', 'kaushik', 'anand'}

Method 1: Use of discard() method

The built-in method, discard() in Python, removes the element from the set only if the element is present in the set. If the element is not present in the set, then no error or exception is raised and the original set is printed.
If the element is present in the set:




# Python program to remove random elements of choice
# Function to remove elements using discard()
def Remove(sets):
    sets.discard(20)
    print (sets)
      
# Driver Code
sets = set([10, 20, 26, 41, 54, 20])
Remove(sets)

Output:



{41, 10, 26, 54}

If the element is not present in the set:




# Python program to remove random elements of choice
# Function to remove elements using discard()
def Remove(sets):
    sets.discard(21)
    print (sets)
      
# Driver Code
sets = set([10, 20, 26, 41, 54, 20])
Remove(sets)

Output:

{41, 10, 26, 20, 54}

Method 2: Use of remove() method

The built-in method, remove() in Python, removes the element from the set only if the element is present in the set, just as the discard() method does but If the element is not present in the set, then an error or exception is raised.
If the element is present in the set:




# Python program to remove random elements of choice
# Function to remove elements using remove()
def Remove(sets):
    sets.remove("aakash")
    print (sets)
      
# Driver Code
sets = set(["ram", "aakash", "kaushik", "anand", "prashant"])
Remove(sets)

Output:

{'ram', 'anand', 'prashant', 'kaushik'}

If the element is not present in the set:




# Python program to remove random elements of choice
# Function to remove elements using remove()
def Remove(sets):
    sets.remove("gaurav")
    print (sets)
      
# Driver Code
sets = set(["ram", "aakash", "kaushik", "anand", "prashant"])
Remove(sets)

Output:

No Output

Error:

Traceback (most recent call last):
  File "/home/bf95b32da22ada77d72062a73d3e0980.py", line 9, in 
    Remove(sets)
  File "/home/bf95b32da22ada77d72062a73d3e0980.py", line 4, in Remove
    sets.remove("gaurav")
KeyError: 'gaurav'

 Attention geek! Strengthen your foundations with the Python Programming Foundation Course and learn the basics.  

To begin with, your interview preparations Enhance your Data Structures concepts with the Python DS Course. And to begin with your Machine Learning Journey, join the Machine Learning – Basic Level Course




My Personal Notes arrow_drop_up
Recommended Articles
Page :