The syntax of setdefault() is:
dict.setdefault(key[, default_value])
setdefault() Parameters
setdefault() takes a maximum of two parameters:
- key - the key to be searched in the dictionary
- default_value (optional) - key with a value default_value is inserted to the dictionary if the key is not in the dictionary.
If not provided, the default_value will beNone.
Return Value from setdefault()
setdefault() returns:
- value of the key if it is in the dictionary
- None if the key is not in the dictionary and default_value is not specified
- default_value if key is not in the dictionary and default_value is specified
Recommended Reading: Python Dictionary
Example 1: How setdefault() works when key is in the dictionary?
person = {'name': 'Phill', 'age': 22}
age = person.setdefault('age')
print('person = ',person)
print('Age = ',age)
Output
person = {'name': 'Phill', 'age': 22}
Age = 22
Example 2: How setdefault() works when key is not in the dictionary?
person = {'name': 'Phill'}
# key is not in the dictionary
salary = person.setdefault('salary')
print('person = ',person)
print('salary = ',salary)
# key is not in the dictionary
# default_value is provided
age = person.setdefault('age', 22)
print('person = ',person)
print('age = ',age)
Output
person = {'name': 'Phill', 'salary': None}
salary = None
person = {'name': 'Phill', 'age': 22, 'salary': None}
age = 22
Also Read: