Python Dictionary copy()

They copy() method returns a copy (shallow copy) of the dictionary.

Example

original_marks = {'Physics':67, 'Maths':87}

copied_marks = original_marks.copy()
print('Original Marks:', original_marks) print('Copied Marks:', copied_marks) # Output: Original Marks: {'Physics': 67, 'Maths': 87} # Copied Marks: {'Physics': 67, 'Maths': 87}

Syntax of Dictionary copy()

The syntax of copy() is:

dict.copy()

copy() Arguments

The copy() method doesn't take any arguments.


copy() Return Value

This method returns a shallow copy of the dictionary. It doesn't modify the original dictionary.


Example 1: How copy works for dictionaries?

original = {1:'one', 2:'two'}
new = original.copy()
print('Orignal: ', original) print('New: ', new)

Output

Orignal:  {1: 'one', 2: 'two'}
New:  {1: 'one', 2: 'two'}

Dictionary copy() Method Vs = Operator

When the copy() method is used, a new dictionary is created which is filled with a copy of the references from the original dictionary.

When the = operator is used, a new reference to the original dictionary is created.


Example 2: Using = Operator to Copy Dictionaries

original = {1:'one', 2:'two'}
new = original
# removing all elements from the list new.clear() print('new: ', new) print('original: ', original)

Output

new:  {}
original:  {}

Here, when the new dictionary is cleared, the original dictionary is also cleared.


Example 3: Using copy() to Copy Dictionaries

original = {1:'one', 2:'two'}
new = original.copy()
# removing all elements from the list new.clear() print('new: ', new) print('original: ', original)

Output

new:  {}
original:  {1: 'one', 2: 'two'}

Here, when the new dictionary is cleared, the original dictionary remains unchanged.


Also Read:

Did you find this article helpful?

Your builder path starts here. Builders don't just know how to code, they create solutions that matter.

Escape tutorial hell and ship real projects.

Try Programiz PRO
  • Real-World Projects
  • On-Demand Learning
  • AI Mentor
  • Builder Community