Iterate over a dictionary in Python



Iterate over a dictionary in Python

Dictionary in Python is an unordered collection of data values, used to store data values like a map, which unlike other Data Types that hold only single value as an element, Dictionary holds key:value pair.

There are multiple ways to iterate over a dictionary in Python.

  • Iterate through all keys
  • Iterate through all values
  • Iterate through all key, value pairs

Iterate through all keys:

The order of states in the below code will change every time because the dictionary doesn’t store keys in a particular order.

# Python3 code to iterate through all keys in a dictionary
 
statesAndCapitals = {
                     'Gujarat' : 'Gandhinagar',
                     'Maharashtra' : 'Mumbai',
                     'Rajasthan' : 'Jaipur',
                     'Bihar' : 'Patna'
                    }
                     
print('List Of given states:\n')
 
# Iterating over keys
for state in statesAndCapitals:
    print(state)

Output:

List Of given states:

Rajasthan
Bihar
Maharashtra
Gujarat

In order to maintain the order of keys and values in a dictionary, use OrderedDict.

# Python3 code to iterate through all keys 
# in a dictionary in a specific order
 
from collections import OrderedDict
 
statesAndCapitals = OrderedDict([
                                 ('Gujarat', 'Gandhinagar'),
                                 ('Maharashtra', 'Mumbai'),
                                 ('Rajasthan', 'Jaipur'),
                                 ('Bihar', 'Patna')
                                ])
                     
print('List Of given states:\n')
 
# Iterating over keys
for state in statesAndCapitals:
    print(state)

Output:

List Of given states:

Gujarat
Maharashtra
Rajasthan
Bihar

Above dictionary is an OrderedDict as the keys and values are stored in the order in which they were defined in the dictionary. Hence the above method should be used when we want to maintain the order of (key, value) stored in the dictionary.

Iterate through all values:

Again, in this case, the order in which the capitals are printed in the below code will change every time because the dictionary doesn’t store them in a particular order.

# Python3 code to iterate through all values in a dictionary
 
statesAndCapitals = {
                     'Gujarat' : 'Gandhinagar',
                     'Maharashtra' : 'Mumbai',
                     'Rajasthan' : 'Jaipur',
                     'Bihar' : 'Patna'
                    }
                     
print('List Of given capitals:\n')
 
# Iterating over values
for capital in statesAndCapitals.values():
    print(capital)

Output:

List Of given capitals:

Gandhinagar
Jaipur
Mumbai
Patna

 

Iterate through all key, value pairs:

# Python3 code to iterate through all key, value 
# pairs in a dictionary
 
statesAndCapitals = {
                     'Gujarat' : 'Gandhinagar',
                     'Maharashtra' : 'Mumbai',
                     'Rajasthan' : 'Jaipur',
                     'Bihar' : 'Patna'
                    }
                     
print('List Of given states and their capitals:\n')
 
# Iterating over values
for state, capital in statesAndCapitals.items():
    print(state, ":", capital)

Output:

List Of given states and their capitals:

Bihar : Patna
Gujarat : Gandhinagar
Rajasthan : Jaipur
Maharashtra : Mumbai

 

Last Updated on October 28, 2021 by admin

Leave a Reply

Your email address will not be published. Required fields are marked *

Recommended Blogs