The python pop() method removes and returns a random element from a set. However, It will generate a keyerror exception if the value is popped from an empty set.
Python Set pop():
In order to remove a specific item from a set, we have to use the discard or remove method. Whereas if we wish to remove random elements then the pop method is suitable to perform the task.
Method signature
The signature for the pop() method is as shown below. Here, s1 refers to a set from which we will pop an element and store it in a variable v.
v=s1.pop()
Method parameters and return type
- The pop() method doesn’t take any parameter
- However, it returns one random element from the set.
Python Set Pop Examples:
Example 1: In this example, let us take a set s1 with a set of numbers. Thereafter, we will call a pop method that removes and returns one random element from the set.
#Initializing the Set
s1 = {99,3,14,13,34,36}
#Printing a set
print("Before pop ",s1)
# Poping random element and printing
v=s1.pop()
print("Value poped is ",v)
#Printing a set after pop
print("After Pop ",s1)
Output
Before pop {34, 3, 99, 36, 13, 14}
Value poped is 34
After Pop {3, 99, 36, 13, 14}
Example 2: In this example, let us consider a set containing cities. Here, We will pop multiple elements out by making call to pop method multiple times.
#Intializing the Set
p1 = {"Delhi", "Bhopal", "Chennai", "Jodhpur"}
#Printing the Set
print ("Before pop Set is",p1)
# Using pop method and printing the value removed
print("First value popped is ",p1.pop())
print("Second value popped is ",p1.pop())
# Printing a Set
print("Now, Set will be ",p1)
Output
Before pop Set is {'Chennai', 'Bhopal', 'Jodhpur', 'Delhi'}
First value popped is Chennai
Second value popped is Bhopal
Now, Set will be {'Jodhpur', 'Delhi'}
Example 3: In this example, let us demonstrate the pop() method on a mixed set. Also, If we try to pop an element from an empty set then, it will raise a KeyError
Exception. As a result of which program terminates from that point.
#Intializing the Set
c1 = {"Sam",25,88.5}
# Printing a Set
print ("Before pop ",c1)
# Using pop method and printing the value removed each time
print("First value popped is ",c1.pop())
print("Second value popped is ",c1.pop())
print("Third value popped is ",p1.pop())
print("Fourth value popped is ",p1.pop())
Output
Before pop {88.5, 25, 'Sam'}
First value popped is 25
Second value popped is 88.5
Third value popped is Sam
Traceback (most recent call last):
File "main.py", line 8, in
print("Fourth value popped is ",c1.pop())
KeyError: 'pop from an empty set'
Conclusion
The pop() method deletes and returns a random element from a set. However, if the set is empty then it raises a KeyError Exception. Hence program terminates abnormally.
References
Happy Learning 🙂