Python Tutorials · Python Dictionaries

Python Dictionaries

Learn all about Python Dictionaries in this comprehensive tutorial.

5 min read beginner
  • Dictionaries are used to store data values in key:value pairs.
  • Dictionary items are ordered, changeable, and do not allow duplicates.
  • When we say that dictionaries are ordered, it means that the items have a defined order, and that order will not change.
  • Dictionaries are changeable, meaning that we can change, add or remove items after the dictionary has been created.
  • Dictionaries cannot have two items with the same key:
  • To determine how many items a dictionary has, use the len() function:
  • The values in dictionary items can be of any data type:
  • From Python's perspective, dictionaries are defined as objects with the data type 'dict':
  • It is also possible to use the dict() constructor to make a dictionary.
  • There are four collection data types in the Python programming language:

Dictionary

Dictionaries are used to store data values in key:value pairs.

A dictionary is a collection which is ordered*, changeable and do not allow duplicates.

Note: As of Python version 3.7, dictionaries are ordered. In Python 3.6 and earlier, dictionaries are unordered.

Dictionaries are written with curly brackets, and have keys and values:

python

Dictionary Items

Dictionary items are ordered, changeable, and do not allow duplicates.

Dictionary items are presented in key:value pairs, and can be referred to by using the key name.

python

Ordered or Unordered?

Note: As of Python version 3.7, dictionaries are ordered. In Python 3.6 and earlier, dictionaries are unordered.

When we say that dictionaries are ordered, it means that the items have a defined order, and that order will not change.

Unordered means that the items do not have a defined order, you cannot refer to an item by using an index.

Changeable

Dictionaries are changeable, meaning that we can change, add or remove items after the dictionary has been created.

Duplicates Not Allowed

Dictionaries cannot have two items with the same key:

python

Dictionary Length

To determine how many items a dictionary has, use the len() function:

python

Dictionary Items - Data Types

The values in dictionary items can be of any data type:

python

type()

From Python's perspective, dictionaries are defined as objects with the data type 'dict':

python

The dict() Constructor

It is also possible to use the dict() constructor to make a dictionary.

python

Python Collections (Arrays)

There are four collection data types in the Python programming language:

  • **List** is a collection which is ordered and changeable. Allows duplicate members.
  • **Tuple** is a collection which is ordered and unchangeable. Allows duplicate members.
  • **Set** is a collection which is unordered, unchangeable*, and unindexed. No duplicate members.
  • **Dictionary** is a collection which is ordered** and changeable. No duplicate members.
Note: *Set items are unchangeable, but you can remove and/or add items whenever you like. **As of Python version 3.7, dictionaries are ordered. In Python 3.6 and earlier, dictionaries are unordered.

When choosing a collection type, it is useful to understand the properties of that type. Choosing the right type for a particular data set could mean retention of meaning, and, it could mean an increase in efficiency or security.

Module quiz

2 questions
1

Which of the following is true about Python Dictionaries?

2

What is the most common pitfall when working with Python Dictionaries?

Answer all questions to submit.