Python | remove() and discard() in Sets

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:

filter_none

edit
close

play_arrow

link
brightness_4
code

# 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)

chevron_right


Output:

{41, 10, 26, 54}

If the element is not present in the set:

filter_none

edit
close

play_arrow

link
brightness_4
code

# 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)

chevron_right


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:

filter_none

edit
close

play_arrow

link
brightness_4
code

# 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)

chevron_right


Output:

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

If the element is not present in the set:

filter_none

edit
close

play_arrow

link
brightness_4
code

# 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)

chevron_right


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'


My Personal Notes arrow_drop_up

Check out this Author's contributed articles.

If you like GeeksforGeeks and would like to contribute, you can also write an article using contribute.geeksforgeeks.org or mail your article to contribute@geeksforgeeks.org. See your article appearing on the GeeksforGeeks main page and help other Geeks.

Please Improve this article if you find anything incorrect by clicking on the "Improve Article" button below.




Article Tags :
Practice Tags :


1


Please write to us at contribute@geeksforgeeks.org to report any issue with the above content.