import copy
# 深拷贝:会连子对象的内存也全部拷贝一份,对子对象的修改不会影响源对象
# 浅拷贝:不拷贝子对象的内容,只是拷贝子对象的引用

# a = [1, 2, [3, 4]]
# b = a
# print(id(a))
# print(id(b))
# a[2][0] = 4
# print(a)
# print(b)

# c = copy.copy(a) # 浅拷贝
# print(id(c))
# a[0] = 2
# print(c)
# a[2][0] = 4 # 对源对象的子对象进行修改
# print(c) # c列表中的子对象也跟着发生了变化

# d = copy.deepcopy(a) # 深拷贝
# print(id(d))
# a[0] = 2
# print(d)
# a[2][0] = 4 # 对源对象的子对象进行修改
# print(d) # d列表中的子对象没有发生变化