deep copy list
examples/modules/copy_list.py
a = [ { 'name': 'Joe', 'email': 'joe@examples.com', }, { 'name': 'Mary', 'email': 'mary@examples.com', }, ] b = a a[0]['phone'] = '1234' a[0]['name'] = 'Jane' a.append({ 'name': 'George' }) print(a) print(b)
[{'name': 'Jane', 'email': 'joe@examples.com', 'phone': '1234'}, {'name': 'Mary', 'email': 'mary@examples.com'}, {'name': 'George'}] [{'name': 'Jane', 'email': 'joe@examples.com', 'phone': '1234'}, {'name': 'Mary', 'email': 'mary@examples.com'}, {'name': 'George'}]
examples/modules/shallow_copy_list.py
a = [ { 'name': 'Joe', 'email': 'joe@examples.com', }, { 'name': 'Mary', 'email': 'mary@examples.com', }, ] b = a[:] a[0]['phone'] = '1234' a[0]['name'] = 'Jane' a.append({ 'name': 'George' }) print(a) print(b)
[{'name': 'Jane', 'email': 'joe@examples.com', 'phone': '1234'}, {'name': 'Mary', 'email': 'mary@examples.com'}, {'name': 'George'}] [{'name': 'Jane', 'email': 'joe@examples.com', 'phone': '1234'}, {'name': 'Mary', 'email': 'mary@examples.com'}]
examples/modules/deep_copy_list.py
from copy import deepcopy a = [ { 'name': 'Joe', 'email': 'joe@examples.com', }, { 'name': 'Mary', 'email': 'mary@examples.com', }, ] b = deepcopy(a) a[0]['phone'] = '1234' a[0]['name'] = 'Jane' a.append({ 'name': 'George' }) print(a) print(b)
[{'name': 'Jane', 'email': 'joe@examples.com', 'phone': '1234'}, {'name': 'Mary', 'email': 'mary@examples.com'}, {'name': 'George'}] [{'name': 'Joe', 'email': 'joe@examples.com'}, {'name': 'Mary', 'email': 'mary@examples.com'}]