What Data Structure Is a Python Dictionary?


Heather Bennett

A Python dictionary is a built-in data structure that allows you to store and retrieve data in an unordered manner. It is also known as an associative array or a hash map in other programming languages. In this article, we will explore the characteristics and usage of dictionaries in Python.

Creating a Dictionary

To create a dictionary in Python, you use curly braces ({}) and separate the key-value pairs with colons (:). Here is an example:

d = {'name': 'John', 'age': 25, 'city': 'New York'}

In this example, we have created a dictionary with three key-value pairs: name, age, and city. The keys are unique within a dictionary and are used to access the corresponding values.

Accessing Dictionary Values

You can access the values of a dictionary by using square brackets ([]), specifying the key inside them. Here is an example:

print(d['name'])  # Output: John

In this example, we accessed the value associated with the key ‘name’ and printed it to the console.

Modifying Dictionary Values

You can modify the values of a dictionary by assigning a new value to an existing key or by adding a new key-value pair. Here are some examples:

d['age'] = 30
d['country'] = 'USA'

In these examples, we modified the value associated with the key ‘age’ and added a new key-value pair for ‘country’.

Dictionary Methods

Python provides several built-in methods to work with dictionaries. Here are some commonly used methods:

  • get(key): Returns the value associated with the given key if it exists, otherwise returns None.
  • keys(): Returns a list of all the keys in the dictionary.
  • values(): Returns a list of all the values in the dictionary.
  • items(): Returns a list of all the key-value pairs as tuples.
  • pop(key): Removes and returns the value associated with the given key.

These methods provide convenient ways to retrieve, manipulate, and remove elements from a dictionary based on your requirements.

Iterating Over a Dictionary

You can iterate over a dictionary using loops to access its keys, values, or key-value pairs. Here is an example:

for key in d:
    print(key)  # Output: name, age, city

for value in d.values():
    print(value)  # Output: John, 30, New York

for key, value in d.items():
    print(key + ':', value)  # Output: name: John, age: 30, city: New York

In these examples, we used different loops to iterate over the dictionary and printed its keys, values, and key-value pairs respectively.

Dictionaries vs. Lists

Dictionaries are similar to lists in Python but with some differences. While lists store elements in an ordered sequence accessed by their indices (starting from zero), dictionaries store elements as key-value pairs that can be accessed using their unique keys. This makes dictionaries more suitable for storing and retrieving data based on specific keys rather than by position.

Another difference is that dictionaries are mutable, meaning you can modify their values, add new key-value pairs, or remove existing ones, whereas lists are also mutable but allow modifying elements at a particular index.


In conclusion, a Python dictionary is a versatile data structure that provides an efficient way to store and retrieve data using unique keys. It offers various methods for manipulation and iteration, making it a powerful tool in Python programming. Understanding dictionaries and their usage will greatly enhance your ability to work with complex data structures in Python.

Discord Server - Web Server - Private Server - DNS Server - Object-Oriented Programming - Scripting - Data Types - Data Structures

Privacy Policy