What is copy module in python

Like other programming language python does not support = operation to copy an objects,instead it creates a new variable that shares the reference of the original object.Fortunately we have copy module in python copy an object to a variable.Their are two ways to use copy module in python.They are Shallow Copy and Deep Copy .

Deep copy in python

Deep copy is one of the way copy module in python,in Deep copy process a copy of object is copied in other object.so whatever the change we make on the Deep copy object it will not reflect in the original object.Deep copy copies all values recursively from source to target object. First constructing a new collection object and then recursively populating it with copies of the child objects found in the original

Deep copy example

import copy
  
# initializing item1 
item1 = [7, 12, [9,50], 14]
  
# using deep copy to copy item1 
item2 = copy.deepcopy(item1 )
  
# original elements of item1 
print ("Orignal item1 ")
for i in range(0,len(item1)):
    print (item1[i],end=" ")
  
# adding and element to item2 
item2[2][0] = 69

print("\r")

print ("Deep copy result item2")
for i in range(0,len( item2 )):
    print (item2[i],end=" ")
  
print("\r")

print ("After copying Deep copy Orignal item1 ")
for i in range(0,len( item1)):
    print (item1[i],end=" ")


Copy-module-in-Pytho-deep-copy

shallow copy example

shallow copy is a way in which a reference of object is copied in other object. so any changes made to a shallow copy of object do reflect in the original object.shallow copy is done with “copy()” function.

import copy
  
# initializing item1 
item1 = [7, 12, [9,50], 14]
  
# using deep copy to copy item1 
item2 = copy.copy(item1 )
  
# original elements of item1 
print ("Orignal item1 ")
for i in range(0,len(item1)):
    print (item1[i],end=" ")
  
# adding and element to item2 
item2[2][0] = 69

print("\r")

print ("Shallow copy result item2")
for i in range(0,len( item2 )):
    print (item2[i],end=" ")
  
print("\r")

print ("After copying Shallow copy Orignal item1 ")
for i in range(0,len( item1)):
    print (item1[i],end=" ")

Shallow copy module in Python

My Thought

Your email address will not be published. Required fields are marked *