简谈深浅拷贝

深浅拷贝

拷贝

形式:

list1 = [1,2,3]
list2 = list1
id(list1) == id(list2)
list2 is list1

浅拷贝

形式:

import copy
list1 = [1,2,3,[4,5]]
list2 = copy.copy(list1)  # 等同于 list2 = list1.copy()
id(list1) != id(list2)
id(list1[3]) == id(list2[3])

深拷贝

形式:

import copy
list1 = [1,2,3,[4,5]]
list2 = copy.deepcopy(list1)
id(list1) != id(list2)
id(list1[3]) != id(list2[3])

猜你喜欢

转载自www.cnblogs.com/Du704/p/11317166.html