Python Dictionary Methods – Complete Guide with Examples

Introduction

Dictionaries are one of the most powerful and frequently used data structures in Python. They store data in the form of key-value pairs, making it easy to organize, retrieve, update, and manage information efficiently. Dictionaries are widely used in web development, APIs, database operations, configuration management, and data processing applications.

While creating and accessing dictionaries is important, Python also provides a rich set of built-in dictionary methods that make it easier to manipulate dictionary data. These methods allow developers to retrieve values, update records, remove items, create copies, and perform various operations without writing complex code.

What Are Dictionary Methods?

Dictionary methods are built-in functions that operate on dictionary objects. These methods help you perform common tasks such as:

  • Accessing values
  • Retrieving keys
  • Updating records
  • Removing items
  • Copying dictionaries
  • Clearing data
  • Looping through key-value pairs

Example:


student = {
    "name": "John",
    "age": 20
}
print(student.keys())

Output:

dict_keys([‘name’, ‘age’])

Here, keys() is a dictionary method.

Common Dictionary Methods

Method description
get() Returns value of a key
keys() Returns all keys
values() Returns all values
items() Returns key-value pairs
update() Updates dictionary
pop() Removes specified key
popitem() Removes last inserted item
clear() Removes all items
copy() Creates a copy
setdefault() Returns value and inserts key if missing
fromkeys() Creates a new dictionary from keys

get() Method

The get() method retrieves the value of a specified key.

Syntax


dictionary.get(key, default_value)

Example:


student = {
    "name": "John",
    "age": 20
}
print(student.get("name"))

Output:

John

Using a Default Value with get()

Example:


student = {
    "name": "John"
}
print(student.get("city", "Not Found"))

Output:

Not Found

This prevents a KeyError.

keys() Method

The keys() method returns all dictionary keys.

Syntax


dictionary.keys()

Example:


student = {
    "name": "John",
    "age": 20,
    "course": "Python"
}
print(student.keys())

Output:

dict_keys([‘name’, ‘age’, ‘course’])

values() Method

The values() method returns all values from the dictionary.

Syntax


dictionary.values()

Example:


student = {
    "name": "John",
    "age": 20
}
print(student.values())

Output:

dict_values([‘John’, 20])

items() Method

The items() method returns key-value pairs as tuples.

Syntax


dictionary.items()

Example:


student = {
    "name": "John",
    "age": 20
}
print(student.items())

Output:

dict_items([(‘name’, ‘John’), (‘age’, 20)])

update() Method

The update() method updates existing values and adds new key-value pairs.

Syntax


dictionary.update(other_dictionary)

Example:


student = {
    "name": "John",
    "age": 20
}
student.update({
    "age": 21,
    "city": "Delhi"
})
print(student)

Output:

{
‘name’: ‘John’,
‘age’: 21,
‘city’: ‘Delhi’
}

pop() Method

The pop() method removes a specified key and returns its value.

Syntax


dictionary.pop(key)

Example:


student = {
    "name": "John",
    "age": 20
}
age = student.pop("age")
print(age)
print(student)

Output:

20
{‘name’: ‘John’}

popitem() Method

The popitem() method removes and returns the last inserted key-value pair.

Example:


student = {
    "name": "John",
    "age": 20
}
item = student.popitem()
print(item)

Output:

(‘age’, 20)

clear() Method

The clear() method removes all items from a dictionary.

Syntax


dictionary.clear()

Example:


student = {
    "name": "John",
    "age": 20
}
student.clear()
print(student)

Output:

{}

copy() Method

The copy() method creates a duplicate dictionary.

Syntax


dictionary.copy()

Example:


student = {
    "name": "John",
    "age": 20
}
new_student = student.copy()
print(new_student)

Output:

{
‘name’: ‘John’,
‘age’: 20
}

setdefault() Method

The setdefault() method returns the value of a key. If the key does not exist, it inserts the key with a specified value.

Syntax


dictionary.setdefault(key, default)

Example:


student = {
    "name": "John"
}
student.setdefault("city", "Delhi")
print(student)

Output:

{
‘name’: ‘John’,
‘city’: ‘Delhi’
}

fromkeys() Method

The fromkeys() method creates a new dictionary using specified keys.

Syntax


dict.fromkeys(keys, value)

Example:


keys = ["name", "age", "city"]
student = dict.fromkeys(keys, "N/A")
print(student)

Output:

{
‘name’: ‘N/A’,
‘age’: ‘N/A’,
‘city’: ‘N/A’
}

Looping Through Dictionary Methods

Using keys()


student = {
    "name": "John",
    "age": 20
}
for key in student.keys():
    print(key)

Output:

name
age

Using values()


for value in student.values():
    print(value)

Output:

John
20

Using items()


for key, value in student.items():
    print(key, value)

Output:

name John
age 20

Real-Life Examples:

1. User Profile Management


user = {
    "username": "john123",
    "email": "john@example.com"
}

Update email:


user.update({
    "email": "john_new@example.com"
})
print(user)

Output:

{ ‘username’: ‘john123′, ’email’: ‘john_new@example.com’ }

2. Product Inventory


product = {
    "name": "Laptop",
    "price": 50000
}

Add stock quantity:


product.setdefault("stock", 10)
print(product)

Output:

{
‘name’: ‘Laptop’,
‘price’: 50000,
‘stock’: 10
}

3. Student Database


student = {
    "name": "Emma",
    "age": 22
}

View all fields:

for key, value in student.items():


   print(key, value)

Output:

name Emma
age 22

Advantages of Dictionary Methods

  • Easy to use
  • Fast performance
  • Simplifies data manipulation
  • Supports dynamic applications
  • Improves code readability
  • Reduces development time

Common Mistakes

1. Accessing Missing Keys Without get()

Incorrect:


   student = {
    "name": "John"
}
print(student["city"])

Error:

KeyError

Correct:


print(student.get("city"))

2. Expecting update() to Return a Dictionary

Incorrect:


result = student.update({
    "age": 20
})
print(result)

Output:

None

The dictionary itself is updated.

3. Using pop() on a Missing Key

Incorrect:


student.pop("city")

Error:

KeyError

Use:


student.pop("city", None)

4. Confusing copy() with Assignment

Incorrect:


new_student = student

Both variables point to the same dictionary.

Correct:


new_student = student.copy()

Best Practices

1. Use get() for Safe Access


user.get("email")

2. Use items() for Iteration

for key, value in user.items():


print(key, value)

3. Use copy() Before Major Changes


backup = user.copy()

4. Use update() for Multiple Modifications


user.update({
    "city": "Delhi",
    "country": "India"
})

5. Use setdefault() for Optional Fields


user.setdefault("country", "India")

Conclusion

Dictionary methods in Python provide powerful tools for managing and manipulating key-value data efficiently. Methods such as get(), keys(), values(), items(), update(), pop(), copy(), and setdefault() simplify common operations and make code more readable and maintainable.

Since dictionaries are heavily used in web development, APIs, databases, automation scripts, and data analysis, mastering these methods is essential for every Python developer.

Related Python Tutorials