Sentry Answers>Python>

Add new keys to a dictionary in Python

Add new keys to a dictionary in Python

David Y.

The Problem

How can I add new keys to a dictionary in Python?

The Solution

Python provides a few different ways to add new key-value pairs to an existing dictionary. The simplest way is to assign a value to a new key using Python’s indexing/square brackets syntax:

Click to Copy
prices = {"Apple": 1, "Orange": 2} # existing dictionary prices["Avocado"] = 3 # new key-value pair print(prices) # will print {"Apple": 1, "Orange": 2, "Avocado": 3}

This same syntax can be used to update existing key-value pairs:

Click to Copy
prices["Apple"] = 2 print(prices) # will print {"Apple": 2, "Orange": 2, "Avocado": 3}

To add and update multiple key-value pairs at once, we can use Python’s dict.update() method:

Click to Copy
prices.update({"Pear": 2, "Grapefruit": 2, "Orange": 3}) # adds Pear and Grapefruit, and updates Orange print(prices) # will print {"Apple": 2, "Orange": 3, "Avocado": 3, "Pear": 2, "Grapefruit": 2}

You can also use the dictionary comprehension and dictionary constructor together to add or update the key-value pairs:

Click to Copy
prices = {**prices, **{"Pear": 2, "Grapefruit": 2, "Orange": 3}} print(prices) # will print {"Apple": 2, "Orange": 3, "Avocado": 3, "Pear": 2, "Grapefruit": 2}

As of Python 3.9, we can use the update operator (|=) instead of the update() method:

Click to Copy
prices |= {"Pear": 2, "Grapefruit": 2, "Orange": 3} # adds Pear and Grapefruit and updates Orange print(prices) # will print {"Apple": 2, "Orange": 3, "Avocado": 3, "Pear": 2, "Grapefruit": 2}
  • Sentry BlogPython Performance Testing: A Comprehensive Guide (opens in a new tab)
  • Syntax.fmListen to the Syntax Podcast (opens in a new tab)
  • Sentry BlogLogging in Python: A Developer’s Guide (opens in a new tab)
  • CodecovPython - Codecov (opens in a new tab)
  • Syntax.fm logo
    Listen to the Syntax Podcast (opens in a new tab)

    Tasty treats for web developers brought to you by Sentry. Get tips and tricks from Wes Bos and Scott Tolinski.

    SEE EPISODES

Considered “not bad” by 4 million developers and more than 150,000 organizations worldwide, Sentry provides code-level observability to many of the world’s best-known companies like Disney, Peloton, Cloudflare, Eventbrite, Slack, Supercell, and Rockstar Games. Each month we process billions of exceptions from the most popular products on the internet.