How do I deep copy lists in Python with examples?

In Python, a deep copy of a list is created using the `copy` module, specifically the `deepcopy` function. A deep copy means creating a new object that is a copy of the original object along with all the objects it references. This ensures that any changes made to the deep-copied object do not affect the original object and vice versa.

Here are some examples of how to perform deep copying of lists in Python:


import copy

# Original list with nested elements
original_list = [1, 2, [3, 4], 5]

# Creating a deep copy of the original list
deep_copied_list = copy.deepcopy(original_list)

# Modifying the deep copied list
deep_copied_list[2][0] = 'Changed'

# Displaying both lists
print("Original List:", original_list)       # Output: [1, 2, [3, 4], 5]
print("Deep Copied List:", deep_copied_list) # Output: [1, 2, ['Changed', 4], 5]
    

deep copy Python list copy module deepcopy function