Course Content
Python Data Structures
Python Data Structures
Using the remove() and discard() Methods
Sets in Python allow you to remove elements using the remove()
and discard()
methods. While both methods remove specific elements, there is a key difference:
remove()
: raises aKeyError
if the element is not in the set;discard()
: does not raise an error if the element is not found; it simply leaves the set unchanged.
Let's explore these methods using a movie collection theme.
# Attempting to remove movies movies = {"Inception", "Interstellar", "Tenet", "Dunkirk"} # Remove specific movies movies.remove("Dunkirk") movies.remove("Avatar") # This will raise a `KeyError`
Now, let's use the discard()
method, which behaves similarly but avoids errors if the specified movie is not in the set.
# Define a set of favorite movies movies = {"Inception", "Interstellar", "Tenet", "Dunkirk", "Memento"} # Remove specific movies using discard movies.discard("Dunkirk") movies.discard("Memento") movies.discard("Avatar") # Print the result print("Final set:", movies)
Swipe to start coding
You are given the set marvel_movies
. However, two movies from another studio have accidentally been added to this set.
Your goal:
- Remove the movie
"The Dark Knight"
from the set. - Remove the movie
"Justice League"
from the set. - Use the
discard()
orremove()
methods to accomplish this task.
Solution
Thanks for your feedback!
Using the remove() and discard() Methods
Sets in Python allow you to remove elements using the remove()
and discard()
methods. While both methods remove specific elements, there is a key difference:
remove()
: raises aKeyError
if the element is not in the set;discard()
: does not raise an error if the element is not found; it simply leaves the set unchanged.
Let's explore these methods using a movie collection theme.
# Attempting to remove movies movies = {"Inception", "Interstellar", "Tenet", "Dunkirk"} # Remove specific movies movies.remove("Dunkirk") movies.remove("Avatar") # This will raise a `KeyError`
Now, let's use the discard()
method, which behaves similarly but avoids errors if the specified movie is not in the set.
# Define a set of favorite movies movies = {"Inception", "Interstellar", "Tenet", "Dunkirk", "Memento"} # Remove specific movies using discard movies.discard("Dunkirk") movies.discard("Memento") movies.discard("Avatar") # Print the result print("Final set:", movies)
Swipe to start coding
You are given the set marvel_movies
. However, two movies from another studio have accidentally been added to this set.
Your goal:
- Remove the movie
"The Dark Knight"
from the set. - Remove the movie
"Justice League"
from the set. - Use the
discard()
orremove()
methods to accomplish this task.
Solution
Thanks for your feedback!