A RetroSearch Logo

Home - News ( United States | United Kingdom | Italy | Germany ) - Football scores

Search Query:

Showing content from https://www.geeksforgeeks.org/adding-items-to-a-dictionary-in-a-loop-in-python/ below:

Adding Items to a Dictionary in a Loop in Python

Adding Items to a Dictionary in a Loop in Python

Last Updated : 23 Jan, 2025

The task of adding items to a dictionary in a loop in Python involves iterating over a collection of keys and values and adding them to an existing dictionary. This process is useful when we need to dynamically build or update a dictionary, especially when dealing with large datasets or generating key-value pairs in real-time.

For example, consider the lists a = ['Name', 'Website', 'Topic', 'Founded'] and b = ['GeeksforGeeks', 'https://www.geeksforgeeks.org/', 'Programming', 2009]. If we want to add the key-value pairs from these lists to a dictionary using a loop, the dictionary will be {'Name': 'GeeksforGeeks', 'Website': 'https://www.geeksforgeeks.org/', 'Topic': 'Programming', 'Founded': 2009}.

Using update()

update() is an efficient way to add key-value pairs to an existing dictionary inside a loop. It allows us to update the dictionary with new entries at each iteration, either by adding new keys or modifying existing ones.

Python
a = ['Name', 'Website', 'Topic', 'Founded']
b = ['GeeksforGeeks', 'https://www.geeksforgeeks.org/', 'Programming', 2009]

res = {}  # initializes an empty dictionary 
for i, j in zip(a, b):
    res.update({i: j})

print(res)

Output
{'Name': 'GeeksforGeeks', 'Website': 'https://www.geeksforgeeks.org/', 'Topic': 'Programming', 'Founded': 2009}

Explanation:

Using assignment operator

This method involves directly assigning values to the dictionary keys by iterating through both the keys and values. We can use a loop to access each key and then use the index to retrieve the corresponding value from a separate list.

Python
a = ['Name', 'Website', 'Topic', 'Founded']
b = ['GeeksforGeeks', 'https://www.geeksforgeeks.org/', 'Programming', 2009]

res = {}   # initializes an empty dictionary 
for i in range(len(a)):
    res[a[i]] = b[i]

print(res)

Output
{'Name': 'GeeksforGeeks', 'Website': 'https://www.geeksforgeeks.org/', 'Topic': 'Programming', 'Founded': 2009}

Explanation:

Using enumerate

enumerate() provides both the index and the key during iteration, which allows access to corresponding values from another list. This method is useful when we need the index explicitly.

Python
a = ['Name', 'Website', 'Topic', 'Founded']
b = ['GeeksforGeeks', 'https://www.geeksforgeeks.org/', 'Programming', 2009]

res = {}  # initializes an empty dictionary
for i, j in enumerate(a):
    res[j] = b[i]

print(res)

Output
{'Name': 'GeeksforGeeks', 'Website': 'https://www.geeksforgeeks.org/', 'Topic': 'Programming', 'Founded': 2009}

Explanation:

Using dict.fromkeys()

This method initializes a dictionary with predefined keys and default value which can then be updated with a loop. Although this method is less efficient for cases where both keys and values are available upfront, it still serves as a valid approach for dictionary initialization.

Python
a = ['Name', 'Website', 'Topic', 'Founded']
b = ['GeeksforGeeks', 'https://www.geeksforgeeks.org/', 'Programming', 2009]

res = dict.fromkeys(a)  # Creates a dictionary with keys and default None values

for i, j in enumerate(a):
    res[j] = b[i]
print(res)

Output
{'Name': 'GeeksforGeeks', 'Website': 'https://www.geeksforgeeks.org/', 'Topic': 'Programming', 'Founded': 2009}

Explanation:



RetroSearch is an open source project built by @garambo | Open a GitHub Issue

Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo

HTML: 3.2 | Encoding: UTF-8 | Version: 0.7.4