Python - Perform operation on each key dictionary

Python dictionaries are versatile data structures that store key-value pairs. Sometimes you need to perform operations on each key in a dictionary, such as converting to uppercase, adding prefixes, or applying transformations. This article explores three effective approaches to accomplish this task.

Using a For Loop

The most straightforward approach is using a for loop to iterate over each key and perform the desired operation ?

Algorithm

  • Initialize an empty dictionary to store results.

  • Iterate over each key in the original dictionary.

  • Perform the specified operation on each key.

  • Update the new dictionary with the modified key-value pair.

Example

# Original dictionary
original_dict = {'key1': 'value1', 'key2': 'value2', 'key3': 'value3'}

# New dictionary
new_dict = {}

# Iterate over each key
for key in original_dict:
    # Perform operation on the key (converting to uppercase)
    modified_key = key.upper()
    
    # Update the new dictionary with the modified key
    new_dict[modified_key] = original_dict[key]

# Print the new dictionary
print(new_dict)
{'KEY1': 'value1', 'KEY2': 'value2', 'KEY3': 'value3'}

In this example, we create a new dictionary new_dict to store the modified keys. The for loop iterates over each key in the original dictionary and converts it to uppercase using the upper() method.

Using Dictionary Comprehension

Dictionary comprehension provides a concise and elegant way to create dictionaries with modified keys ?

Algorithm

  • Create a new dictionary using dictionary comprehension.

  • Iterate over each key-value pair in the original dictionary.

  • Perform the required operation on each key.

  • Return the modified key-value pair.

Example

# Original dictionary
original_dict = {'key1': 'value1', 'key2': 'value2', 'key3': 'value3'}

# Create a new dictionary using dictionary comprehension
new_dict = {key.upper(): value for key, value in original_dict.items()}

# Print the new dictionary
print(new_dict)
{'KEY1': 'value1', 'KEY2': 'value2', 'KEY3': 'value3'}

The dictionary comprehension iterates over each key-value pair using the items() method. We convert each key to uppercase within the comprehension and create the new dictionary in a single line.

Using the map() Function

The map() function applies a specified function to each item in an iterable, making it useful for key transformations ?

Algorithm

  • Define a function that performs the required operation on a key.

  • Use the map() function to apply the function to each key.

  • Convert the resulting map object to a dictionary.

Example

# Original dictionary
original_dict = {'key1': 'value1', 'key2': 'value2', 'key3': 'value3'}

# Define a function to modify the key
def modify_key(key):
    return key.upper()

# Use map() to apply the function to each key
modified_keys = map(modify_key, original_dict.keys())

# Convert the map object to a dictionary
new_dict = dict(zip(modified_keys, original_dict.values()))

# Print the new dictionary
print(new_dict)
{'KEY1': 'value1', 'KEY2': 'value2', 'KEY3': 'value3'}

We define a modify_key() function that transforms each key. The map() function applies this function to all keys, and we use zip() to combine the modified keys with the original values.

Comparison

Method Readability Performance Best For
For Loop High Good Complex operations
Dictionary Comprehension Very High Best Simple transformations
map() Function Medium Good Reusable functions

Conclusion

Dictionary comprehension is the most Pythonic approach for simple key transformations. Use for loops for complex operations and map() when you have reusable transformation functions.

Updated on: 2026-03-27T14:22:18+05:30

654 Views

Kickstart Your Career

Get certified by completing the course

Get Started
Advertisements