Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Learn Creating a Dictionary in Python: Storing Key-Value Pairs | Mastering Python Dictionaries
Python Data Structures

book
Creating a Dictionary in Python: Storing Key-Value Pairs

The basic syntax for creating a dictionary is as follows:

python
dictionary_name = {
key1: value1,
key2: value2,
key3: value3
}
  • Keys: must be immutable (e.g., strings, numbers, tuples). A list or another dictionary cannot be the key;

  • Values: can be any data type (e.g., strings, numbers, lists, other dictionaries).

Imagine you are managing a library and want to store information about a book. Here's how you can create a dictionary to represent the book's details:

book = {
"title": "Pride and Prejudice",
"author": "Jane Austen",
"year": 1813,
"genre": "Romance"
}
print(book)
1234567
book = { "title": "Pride and Prejudice", "author": "Jane Austen", "year": 1813, "genre": "Romance" } print(book)
copy

This dictionary uses strings as keys to store information about the book.

Dictionaries allow keys to be any immutable data type. For instance, you can use numbers as keys to create an index of library shelves:

shelves = {1: "Classics", 2: "Science Fiction", 3: "Mystery", 4: "Non-fiction"}
print(shelves)
12
shelves = {1: "Classics", 2: "Science Fiction", 3: "Mystery", 4: "Non-fiction"} print(shelves)
copy

In this example, numbers are keys to map genres to specific library shelves.

Note

An immutable data type is a type of data that cannot be changed after creation. Examples include strings, numbers, and tuples.

What happens if keys are duplicated in a dictionary?

In Python, dictionary keys must be unique. If duplicate keys are provided when creating or updating a dictionary, the last occurrence of the key will overwrite the previous one. This means the dictionary will only retain the most recent value associated with that key.

book = {"title": "1984", "author": "George Orwell", "title": "Animal Farm"}
print(book) # Output: {'title': 'Animal Farm', 'author': 'George Orwell'}
12
book = {"title": "1984", "author": "George Orwell", "title": "Animal Farm"} print(book) # Output: {'title': 'Animal Farm', 'author': 'George Orwell'}
copy

In this case, the second "title" key with the value "Animal Farm" overwrites the first "title" key.

Task

Swipe to start coding

Create a dictionary named library that stores information about at least three books. Each entry in the dictionary should represent a book with the following format:

  • Key: The title of the book (as a string)
  • Value: The author of the book (as a string)

You can use the following data:

  1. The Great Gatsby | F. Scott Fitzgerald
  2. 1984 | George Orwell
  3. To Kill a Mockingbird | Harper Lee

Ensure the dictionary is created using curly braces {}, and each key-value pair is separated by a comma.

Solution

# Write your code here
library = {
'The Great Gatsby': 'F. Scott Fitzgerald',
'1984': 'George Orwell',
'To Kill a Mockingbird': 'Harper Lee'
}

# Testing
print('Library dictionary:', library)
Everything was clear?

How can we improve it?

Thanks for your feedback!

Section 2. Chapter 1
# Write your code here
library = ___

# Testing
print('Library dictionary:', library)

Ask AI

expand
ChatGPT

Ask anything or try one of the suggested questions to begin our chat

some-alt