Skip to content
Related Articles

Related Articles

Python Dictionary keys() method

View Discussion
Improve Article
Save Article
Like Article
  • Difficulty Level : Basic
  • Last Updated : 31 May, 2021

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

keys() method in Python Dictionary, returns a view object that displays a list of all the keys in the dictionary in order of insertion.

Syntax: dict.keys()
Parameters: There are no parameters.
Returns: A view object is returned that displays all the keys. This view object changes according to the changes in the dictionary.

Example #1: 


# Python program to show working
# of keys in Dictionary
# Dictionary with three keys
Dictionary1 = {'A': 'Geeks', 'B': 'For', 'C': 'Geeks'}
# Printing keys of dictionary
# Creating empty Dictionary
empty_Dict1 = {}
# Printing keys of Empty Dictionary


dict_keys(['A', 'B', 'C'])

Note: The order of these key values in the list may not always be the same. 
Example #2: To show how updation of dictionary works 


# Python program to show updation
# of keys in Dictionary
# Dictionary with two keys
Dictionary1 = {'A': 'Geeks', 'B': 'For'}
# Printing keys of dictionary
print("Keys before Dictionary Updation:")
keys = Dictionary1.keys()
# adding an element to the dictionary
print('\nAfter dictionary is updated:')


Keys before Dictionary Updation:
dict_keys(['B', 'A'])

After dictionary is updated:
dict_keys(['B', 'A', 'C'])

Here, when the dictionary is updated, keys are also automatically updated to show the changes.

Practical Application: The keys() can be used to access the elements of the dictionary as we can do for the list, without the use of keys(), no other mechanism provides means to access dictionary keys as a list by index. This is demonstrated in the example below.

Example #3: Demonstrating the practical application of keys()


# Python program to demonstrate
# working of keys()
# initializing dictionary
test_dict = { "geeks" : 7, "for" : 1, "geeks" : 2 }
# accessing 2nd element using naive method
# using loop
j = 0
for i in test_dict:
    if (j == 1):
        print ('2nd key using loop : ' + i)
    j = j + 1
# accessing 2nd element using keys()
print ('2nd key using keys() : ' + test_dict.keys()[1])

Output : 

2nd key using loop : for
TypeError: 'dict_keys' object does not support indexing 

Note: The second approach would not work because dict_keys in Python 3 does not support indexing. 

My Personal Notes arrow_drop_up
Recommended Articles
Page :

Start Your Coding Journey Now!