E0_copy
is not a deep copy. You don’t make a deep copy using list()
. (Both list(...)
and testList[:]
are shallow copies.)
You use copy.deepcopy(...)
for deep copying a list.
deepcopy(x, memo=None, _nil=[]) Deep copy operation on arbitrary Python objects.
See the following snippet –
>>> a = [[1, 2, 3], [4, 5, 6]] >>> b = list(a) >>> a [[1, 2, 3], [4, 5, 6]] >>> b [[1, 2, 3], [4, 5, 6]] >>> a[0][1] = 10 >>> a [[1, 10, 3], [4, 5, 6]] >>> b # b changes too -> Not a deepcopy. [[1, 10, 3], [4, 5, 6]]
Now see the deepcopy
operation
>>> import copy >>> b = copy.deepcopy(a) >>> a [[1, 10, 3], [4, 5, 6]] >>> b [[1, 10, 3], [4, 5, 6]] >>> a[0][1] = 9 >>> a [[1, 9, 3], [4, 5, 6]] >>> b # b doesn't change -> Deep Copy [[1, 10, 3], [4, 5, 6]]
Related Posts:
- List changes unexpectedly after assignment. Why is this and how can I prevent it?
- How can I reverse a list in Python?
- How do I copy a file in Python?
- How can I reverse a list in Python?
- What is the difference between Python’s list methods append and extend?
- Python – TypeError: ‘int’ object is not iterable
- Understanding slice notation
- TypeError: list indices must be integers or slices, not str
- IndexError: list index out of range and python
- How to convert list to string [duplicate]
- Finding the index of an item in a list
- Finding the index of an item in a list
- Accessing the index in ‘for’ loops?
- What does the list() function do in Python?
- TypeError: ‘float’ object is not subscriptable
- Is there a short contains function for lists?
- appending list but error ‘NoneType’ object has no attribute ‘append’
- Check if something is (not) in a list in Python
- Python: finding an element in a list [duplicate]
- How to avoid “RuntimeError: dictionary changed size during iteration” error?
- How do I concatenate two lists in Python?
- How can I randomly select an item from a list?
- Print a list in reverse order with range()?
- Fastest way to check if a value exists in a list
- How can I count the occurrences of a list item?
- TypeError: ‘list’ object cannot be interpreted as an integer
- Why is it string.join(list) instead of list.join(string)?
- How do I copy a file in Python?
- Finding median of list in Python
- Python List vs. Array – when to use?
- Get list from pandas dataframe column or row?
- Finding and replacing elements in a list
- ValueError: max() arg is an empty sequence
- Remove list from list in Python
- python – if not in list
- How can I compare two lists in python and return matches
- Append integer to beginning of list in Python
- List comprehension on a nested list?
- Union of two lists in Python
- Python: Array v. List
- Writing a list to a file with Python
- How do I check if a list is empty?
- Understanding slice notation
- Add list to set?
- What’s the idiomatic syntax for prepending to a short python list?
- How to remove an element from a list by index
- Apply function to each element of a list
- TypeError: unsupported operand type(s) for -: ‘list’ and ‘list’
- Converting Dictionary to List?
- Python Sets vs Lists
- AttributeError: ‘list’ object has no attribute ‘replace’ when trying to remove character
- Python return list from function
- How to check if a string is a substring of items in a list of strings?
- Whats the difference between ‘for x in list:’ and ‘for x in list[:]:’
- ‘list’ object has no attribute ‘shape’
- How do I find the duplicates in a list and create another list with them?
- How do I check if a list is empty?
- How can I get list of values from dict?
- IndexError: list index out of range and python
- AttributeError: ‘list’ object has no attribute ‘replace’ when trying to remove character
- How to sort a list of objects based on an attribute of the objects?
- Pop index out of range
- Print list without brackets in a single row
- How to iterate through two lists in parallel?
- How to remove \n from a list element?
- How to read a text file into a list or an array with Python
- Map to List error: Series object not callable
- how to create a list of lists
- Python assigning multiple variables to same value? list behavior
- How do I check if there are duplicates in a flat list?
- How to return dictionary keys as a list in Python?
- Append a tuple to a list – what’s the difference between two ways?
- Defining lists as global variables in Python
- Subtracting two lists in Python
- How can I remove all instances of an element from a list in Python?
- Create an empty list in Python with certain size
- How to concatenate items in a list to a single string?
- What’s the difference between lists enclosed by square brackets and parentheses in Python?
- Python 2: AttributeError: ‘list’ object has no attribute ‘strip’
- Copy a list of list by value and not reference
- How to make a set of lists
- Appending to a list gives ‘int’ object has no attribute ‘append’
- Python data structure sort list alphabetically
- TypeError: unsupported format string passed to list.__format__
- numpy-equivalent of list.pop?
- How to create a numpy array of lists?
- convert csv file to list of dictionaries
- Element-wise addition of 2 lists?
- creating a reverse method for a python list from scratch
- How to split elements of a list?
- Find object in list that has attribute equal to some value (that meets any condition)
- Iterating through list of list in Python
- Python cant convert ‘list’ object to str error [closed]
- In Python, is there an elegant way to print a list in a custom format without explicit looping?
- Get difference between two lists
- Determine if 2 lists have the same elements, regardless of order? [duplicate]
- Python copy files to a new directory and rename if file name already exists
- Building a list inside a list in python
- Writing Python lists to columns in csv
- Python initializing a list of lists