浅拷贝
只拷贝最外层对象, 不拷贝其内部对象
list1 = [1, 2, 3, ['a', 'b']]
list2 = list1[:]
# import copy
# list2 = copy.copy(list1)
print(list2)
# [1, 2, 3, ['a', 'b']]
list1[0] = 10
print(list2)
# [1, 2, 3, ['a', 'b']]
list1[-1][0] = 'A'
print(list2)
# [1, 2, 3, ['A', 'b']]
深拷贝
拷贝对象及其子对象,修改list1,并不会改变list2
import copy
list1 = [1, 2, 3, ['a', 'b']]
list2 = copy.deepcopy(list1)
list1[0] = 10
print(list2)
# [1, 2, 3, ['a', 'b']]
list1[-1][0] = 'A'
print(list2)
# [1, 2, 3, ['a', 'b']]