这其中的区别就是浅复制会简单的复制引用,不管他是mutable还是immutable。而深复制则会递归地复制immutable对象引用,对于mutable,则会新建一个对象。
import copy
a = [1, 2]
b = [a, 3]
c = copy.copy(b) #c = [[1, 2], 3]
d = copy.deepcopy(b) #d = [[1, 2], 3]
a.append(3) #c = [[1, 2, 3], 3]
#d = [[1, 2], 3]