Python Dictionary

By | November 3, 2020

In this tutorial, we will discuss the python dictionary a very useful data type. We will also learn how to create a dictionary and learn all the functions and methods associated with it.

Python Dictionary

A python dictionary is an unordered collection of elements with a key : value pair. Each key is associated with a value.


Here keys are immutable items and values could be mutable or immutable.

Create a Dictionary

To create a dictionary we use { } curly bracket, inserted key : value pairs and separate them with a comma (,).

Remember when you create a dictionary each key should have a corresponding value.

We can also use dict() function to create a dictionay

Dictionary Syntax:

dictionay_name  =  {key_1: value_1 , key_2: value_2 , key_3 : value_3 }

# dict() function syntax

dictionary_name = dict( [[key_1,value1 ], [key_2,value_2], [key_3, value_3]] )


dict_1 = {"hello":"world", "language":"python", "topic":"dictionary"  }    #using curly braces key:value
dict_2 = dict([["hello", "world"], ["language","python"], ["topic","dictionary"]])     #using dict() function


{'hello': 'world', 'language': 'python', 'topic': 'dictionary'}
{'hello': 'world', 'language': 'python', 'topic': 'dictionary'}

Access elements from a dictionary

Dictionary is an unordered collection of key and value pairs, so there is a no concept of using an index that’s why we use the key to retrieve its corresponding value. We can use square brackets and get() function with the key to get the corresponded value.


dict_1 = {"hello":"world", "language":"python", "topic":"dictionary"  }
dict_2 = dict([["hello", "world"], ["language","python"], ["topic","dictionary"]])
print(dict_1['hello'])                        # using square bracket
print(dict_2.get('hello'))                 #using get method



Difference between using a square bracket and get() method

If we pass a wrong key in square bracket then it will throw an error (Key error), but get() will return None value.


Pass wrong key in get method

dict_1 = {"hello":"world", "language":"python", "topic":"dictionary"  }
dict_2 = dict([["hello", "world"], ["language","python"], ["topic","dictionary"]])
print(dict_2.get('hell'))  #uing get method



pass wrong key in square bracket

dict_1 = {"hello":"world", "language":"python", "topic":"dictionary"  }
dict_2 = dict([["hello", "world"], ["language","python"], ["topic","dictionary"]])
print(dict_2['hell'])          #using get method


KeyError: 'hell'

Add elements in a Dictionary:

Dictionaries are mutable, though keys of a dictionary are immutable but the mutability concept of a data type concern with the values not with index or key.

With the help of its key with can change its corresponding value using an assignment operator.


info_cad = {'name':'Steve', 'course': 'c++', 'level':6
print('dictionary before any changes:',info_cad)
info_cad['level'] = 7
info_cad['course'] = 'python'
print("dictionary after the changes:", info_cad)


dictionary before any changes: {'name': 'Steve', 'course': 'c++', 'level': 6}
dictionary after the changes: {'name': 'Steve', 'course': 'python', 'level': 7}

Delete elements from a Dictionary:

We can use the pop() method to remove the specific key and value pair from a dictionary.

We can also use clear() method to clear or remove all items of a dictionary.


factorial = {0:1, 1:1, 2:2, 3:6, 4:24, 5:120}
print("factorial dictionary after pop operation:", factorial)
print("factorial dictionary after clear meathod:", factorial)


factorial dictionary after pop operation: {0: 1, 1: 1, 2: 2, 3: 6, 4: 24}
factorial dictionary after clear meathod: {}

Dictionary Methods:

  • clear()
  • copy()
  • fromkeys(seq[, v])
  • get(key[,d])
  • items()
  • keys()
  • pop(key[,d])
  • popitem()
  • setdefault(key[,d]) .
  • update([other])
  • values()

Dictionary Comprehension:

Dictionary comprehension is a technique of forming dictionary key : value pairs using an iterable.


mulitiple_6 = { x : x*6 for x in range(1,10)  }


{1: 6, 2: 12, 3: 18, 4: 24, 5: 30, 6: 36, 7: 42, 8: 48, 9: 54}

The above code is similar to:

mulitiple_6 = {}

for x in range(1,10):
    mulitiple_6[x] = x*6


{1: 6, 2: 12, 3: 18, 4: 24, 5: 30, 6: 36, 7: 42, 8: 48, 9: 54}

Dictionary Operation:

1 in keyword with a dictionary:

We use in keyword with a dictionary to check whether a key is present in that dictionary or not, remember the in keyword does not tell the value present in the dictionary the only key.


check = {1:2, 'hello':"world", 'course':'python' }
print("check whether the 2 key is in the dictionary: ", 2 in check )
print("check whether the key hello is in the dictionary: ", 'hello' in check)


check whether the 2 key is in the dictionary:  False
check whether the key hello is in the dictionary:  True

2 Dictionary as an iterable

We can use for loop to iterate through all the keys of a dictionary.


my_dict = {0: 1, 'age': 70, 'level':8}
for i in my_dict:



Leave a Reply

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