Open In App

Remove a Key from a Python Dictionary Using loop

Last Updated : 04 Mar, 2024
Improve
Improve
Like Article
Like
Save
Share
Report

We are given a dictionary my_dict and we need to delete the key from this dictionary and print the result. In this article, we will see some generally used methods for how to delete dictionary keys while Iterating in Python.

Example:

Input:  {'a': 1, 'b': 2, 'c': 3},  key : b
Output:  {'a': 1, 'c': 3}
Explanation: Here, we have a dictionary with keys a, b, and c. We delete the key 'b' and return the updated dictionary.

Delete a Key from a Python Dictionary Using loop

Below are the methods of Python Delete Dictionary Key While Iterating in Python:

  • Using a Copy of Keys
  • Using Dictionary Comprehension
  • Using Dict.pop() Method

Python Delete Dictionary Key Using loop Using a Copy of Keys

In this example, below code initializes a dictionary `my_dict` with key-value pairs. It then iterates through the keys in the dictionary, and if the key is ‘b’, it deletes that key-value pair. Finally, it prints the modified dictionary.

Python3




my_dict = {'a': 1, 'b': 2, 'c': 3}
 
for key in list(my_dict.keys()):
    if key == 'b':
        del my_dict[key]
 
print(my_dict)


Output

{'a': 1, 'c': 3}

Python Delete Dictionary Key Using loop and Dictionary Comprehension

In this example, below code creates a dictionary my_dict with initial key-value pairs. It then uses a dictionary comprehension to create a new dictionary, excluding the key-value pair where the key is ‘b’.

Python3




my_dict = {'a': 1, 'b': 2, 'c': 3}
 
my_dict = {key: value for key, value in my_dict.items() if key != 'b'}
 
print(my_dict)


Output

{'a': 1, 'c': 3}

Python Delete Dictionary Key Using loop and Dict.pop() Method

In this example, below code initializes a dictionary my_dict with key-value pairs. It iterates through the keys using a list of keys, and if the key is ‘b’, it removes the corresponding key-value pair using pop().

Python3




my_dict = {'a': 1, 'b': 2, 'c': 3}
 
for key in list(my_dict.keys()):
    if key == 'b':
        my_dict.pop(key)
 
print(my_dict)


Output

{'a': 1, 'c': 3}

Conclusion

In conlcusion , Deleting dictionary keys while iterating in Python requires careful consideration to avoid unexpected behavior. The methods presented here provide simple and effective ways to achieve this task. Choose the method that best fits your specific use case, and always be mindful of the potential side effects of modifying a dictionary during iteration.



Like Article
Suggest improvement
Previous
Next
Share your thoughts in the comments

Similar Reads