Skip to main content

Python Dictionary pop() Function

The Dictionary pop() method removes an item with a specified key from the dictionary and returns its value.

note

This method is useful when you need to retrieve and remove a value from a dictionary in a single operation.

Syntax​

my_dictionary.pop(key, default)

pop() Parameters​

Python Dictionary pop() method parameters:

ParameterConditionDescription
keyRequiredThe key of the item to be removed and returned.
defaultOptionalThe value to return if the key is not found in the dictionary.

pop() Return Value​

Python Dictionary pop() function returns:

  • the removed element from the dictionary, if key is found.
  • the value specified as default value (second argument), if key is not found.
danger

If key is not found and default argument is not specified, a KeyError exception is raised!

Examples​

Example 1: Pop an element from the dictionary​

The pop() method is used to remove a key from the dictionary. Moreover, it returns the value associated to the removed key.

my_dict = {'name': 'Tom', 'age': 25}
removed_value = my_dict.pop('age')

print(my_dict) # Output {'name': 'Tom'}
print(removed_value) # Output: 25

output

{'name': 'Tom'}
25

Example 2: Pop an element not present from the dictionary but providing a default value​

If key is in the dictionary, the pop() method removes it and returns its value (no matter what you pass in as default, since a pair key-value exists in the dictionary!).

my_dict = {'name': 'Tom', 'age': 25, 'job': 'Manager'}
removed = my_dict.pop('job', 'Developer') # pop with default value 'Developer'

print(my_dict) # Output: {'name': 'Tom', 'age': 25}
print(removed) # Output: Manager

output

{'name': 'Tom', 'age': 25}
Manager

But if key is not in the dictionary, the method returns specified default value.

my_dict = {'name': 'Tom', 'age': 25}
removed = my_dict.get('job','Developer') # pop with default value 'Developer'

print(my_dict) # Output: {'name': 'Tom', 'age': 25}
print(removed) # Output: Developer

output

{'name': 'Tom', 'age': 25}
Developer

Example 3: Pop an element not present from the dictionary without default value​

If the key to remove is not in the dictionary and default value is not specified, then the pop() method raises KeyError exception.

my_dict = {'name': 'Tom', 'age': 25}
my_dict.pop('job') # raises KeyError: 'job'

output

Traceback (most recent call last):
File "main.py", line 2, in <module>
my_dict.pop('job')
KeyError: 'job'