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: