Loading...

Python Dictionaries

Dictionaries in Python

Python dictionaries are powerful data structures used to store data values in key-value pairs. This lesson will explore the characteristics of dictionaries, how to create and manipulate them, and various examples demonstrating their functionality.

1. What is a Dictionary?

A dictionary is a collection that is ordered*, changeable, and does not allow duplicates. As of Python version 3.7, dictionaries maintain the order of items. In earlier versions, dictionaries were unordered.

Dictionaries are defined using curly brackets {} and consist of key-value pairs.

Example: Create and Print a Dictionary

python
8 lines
|
44/ 500 tokens
1
2
3
4
5
6
7
8
# Creating a dictionary
car_dict = {
  "brand": "Tesla",
  "model": "Model S",
  "year": 2020
}

print(car_dict)  # Output: {'brand': 'Tesla', 'model': 'Model S', 'year': 2020}
Code Tools

2. Dictionary Items

Dictionary items are presented in key-value pairs, and you can access them using the key names.

Example: Accessing a Dictionary Value

python
9 lines
|
43/ 500 tokens
1
2
3
4
5
6
7
8
9
# Creating a dictionary
car_dict = {
  "brand": "Tesla",
  "model": "Model S",
  "year": 2020
}

# Accessing the "model" value
print(car_dict["model"])  # Output: Model S
Code Tools

3. Ordered or Unordered?

As of Python 3.7, dictionaries are ordered collections. This means that items have a defined order, which will not change. In versions prior to 3.7, dictionaries were unordered.

Example: Checking Order

python
8 lines
|
42/ 500 tokens
1
2
3
4
5
6
7
8
# Creating a dictionary
color_dict = {
  "first": "red",
  "second": "green",
  "third": "blue"
}

print(color_dict)  # Output will show the order of items as defined
Code Tools

4. Changeable

Dictionaries are mutable, meaning you can change, add, or remove items after they have been created.

Example: Modifying a Dictionary

python
9 lines
|
44/ 500 tokens
1
2
3
4
5
6
7
8
9
# Creating a dictionary
person_dict = {
  "name": "Alice",
  "age": 30
}

# Changing the age
person_dict["age"] = 31
print(person_dict)  # Output: {'name': 'Alice', 'age': 31}
Code Tools

5. Duplicates Not Allowed

Dictionaries cannot have two items with the same key. If you use the same key again, the value will be overwritten.

Example: Duplicate Key Handling

python
8 lines
|
56/ 500 tokens
1
2
3
4
5
6
7
8
# Creating a dictionary with a duplicate key
product_dict = {
  "name": "Laptop",
  "price": 1000,
  "price": 1200  # This will overwrite the previous price
}

print(product_dict)  # Output: {'name': 'Laptop', 'price': 1200}
Code Tools

6. Dictionary Length

To determine how many items a dictionary contains, use the len() function.

Example: Get the Number of Items in a Dictionary

python
8 lines
|
34/ 500 tokens
1
2
3
4
5
6
7
8
# Creating a dictionary
item_dict = {
  "item1": "Book",
  "item2": "Pen",
  "item3": "Notebook"
}

print(len(item_dict))  # Output: 3
Code Tools

7. Dictionary Items - Data Types

The values in a dictionary can be of any data type, including strings, integers, booleans, and lists.

Example: Dictionary with Various Data Types

python
9 lines
|
64/ 500 tokens
1
2
3
4
5
6
7
8
9
# Creating a dictionary with mixed data types
mixed_dict = {
  "name": "Bob",
  "is_student": True,
  "age": 25,
  "courses": ["Math", "Science"]
}

print(mixed_dict)  # Output: {'name': 'Bob', 'is_student': True, 'age': 25, 'courses': ['Math', 'Science']}
Code Tools

8. What is the Data Type of a Dictionary?

From Python's perspective, dictionaries are defined as objects of the data type 'dict'.

Example: Print the Data Type of a Dictionary

python
8 lines
|
36/ 500 tokens
1
2
3
4
5
6
7
8
# Creating a dictionary
my_dict = {
  "brand": "Toyota",
  "model": "Camry",
  "year": 2022
}

print(type(my_dict))  # Output: <class 'dict'>
Code Tools

Frequently Asked Questions

A dictionary in Python is an unordered collection of key-value pairs used to store data efficiently. Keys in a dictionary are unique, and each key maps to a value. Python dictionaries are mutable, meaning you can add, modify, or delete elements after creation.

Both dict() and {} are ways to create Python dictionaries. The {} syntax is more concise and commonly used, while dict() is useful for creating dictionaries from sequences or keyword arguments, offering flexibility for data storage.

A Python dictionary is a collection of key-value pairs. For example, you could create a dictionary to store personal information like name and age, with the key "name" pointing to a value like "Alice" and "age" pointing to 25.

The __dict__ attribute in Python is used to access an object's attributes in a dictionary form. It stores an object’s writable attributes and can be useful for debugging, reflection, and dynamic manipulation of attributes in Python.

Python dictionaries are of the dict type and are flexible data structures that allow you to store pairs of keys and values. Keys must be immutable and hashable, meaning strings, numbers, and tuples can be used, while values can be of any type, making dictionaries a powerful tool for organizing data.

Still have questions?Contact our support team