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 ðŸ™‚