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:

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:

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:

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:

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:

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}
Join the discussionCome work with us
Share on Twitter
Bookmark this page
Ask a questionImprove this Answer

Related Answers

A better experience for your users. An easier life for your developers.

    TwitterGitHubDribbbleLinkedin
© 2023 • Sentry is a registered Trademark
of Functional Software, Inc.