Python dict() Function

Last Updated : 18 May, 2026

dict() function is a built-in constructor used to create dictionaries. A dictionary is a mutable, unordered collection of key-value pairs, where each key is unique. The dict() function provides a flexible way to initialize dictionaries from various data structures.

Python
d=dict(One = "1", Two = "2")
print(d)

Output
{'One': '1', 'Two': '2'}

Explanation: Here, we create a dictionary using keyword arguments. The keys One and Two are assigned the values "1" and "2" respectively.

Syntax

dict()
dict(mapping)
dict(iterable)
dict(**kwargs)
dict(mapping, **kwargs)

Parameter:

  • iterable (optional): An iterable such as a list of tuples where each tuple contains a key-value pair.
  • mapping (optional): An existing dictionary or mapping object that will be used to create a new dictionary.
  • kwargs (optional): Keyword arguments where keys are strings, used to pass key-value pairs directly.

Return: The function returns a dictionary containing the specified key-value pairs.

Note: mapping and iterable cannot be passed together as two positional arguments

Examples

Example 1: Creating shallow copy of the dictionary

Python
d = {'a': 1, 'b': 2, 'c': 3}

# shallow copy using dict
d_copy = dict(d)

# reference copy
d_shallow = d

# changing value in reference copy will change d
d_shallow['a'] = 10
print(d)

# changing value in copied dictionary won't affect d
d_copy['b'] = 20
print(d)

Output
{'a': 10, 'b': 2, 'c': 3}
{'a': 10, 'b': 2, 'c': 3}

Explanation:

  • A shallow copy using dict(d) creates a new dictionary d_copy with the same key-value pairs, while d_shallow = d makes both variables refer to the same object.
  • Modifying d_shallow affects d, but changes in d_copy do not affect d (since only a new top-level copy is created).

Example 2: Creating dictionary using iterables

Python
d = dict([('a', 1), ('b', 2), ('c', 3)], d=4)
print(d)

Output
{'a': 1, 'b': 2, 'c': 3, 'd': 4}

Explanation: The list of tuples [('a', 1), ('b', 2), ('c', 3)] contains key-value pairs that are used to create the dictionary. This means a is assigned 1, b is assigned 2, and c is assigned 3. Additionally, we can directly add more key-value pairs using keyword arguments, like d=4.

Comment