.copy()
Published Jun 4, 2021Updated Oct 13, 2023
Contribute to Docs
Returns a shallow copy of a list.
Syntax
list2 = list1.copy()
The .copy()
method has no parameters.
Example
A Python list can be copied using the =
assignment operator:
list1 = [1, 2, 3, 4]list2 = list1print(list1) # Output: [1, 2, 3, 4]print(list2) # Output: [1, 2, 3, 4]
However, if you modify list2
, list1
is also modified. This is because list2
is actually pointing to the list1
object.
If you want the original list unchanged when the new list is modified, you can use the .copy()
method.
Copying the orders
list using .copy()
method:
Now if you change new_orders
, orders
stays the same.
Shallow Copy
If you are copying nested lists, shallow copy means if you modify any of the new nested list elements, changes are reflected in both the new and old lists as they point to the same reference. Whereas in deep copy, if you modify any of the new nested list elements, only the new list changes.
Contribute to Docs
- Learn more about how to get involved.
- Edit this page on GitHub to fix an error or make an improvement.
- Submit feedback to let us know how we can improve Docs.