10.深浅拷贝

深浅拷贝

1.浅拷贝,只是拷贝第一层,深层不会进行拷贝

 1 li = [111,222,'zhangsan','lisi']
 2 li1 = li.copy()
 3 print(li)
 4 # =>[111, 222, 'zhangsan', 'lisi']
 5 print(li1)
 6 # =>[111, 222, 'zhangsan', 'lisi']
 7 
 8 li = [[111,222],333,444]
 9 li1 = li.copy()
10 print(li)
11 # =>[[111, 222], 333, 444]
12 print(li1)
13 # =>[[111, 222], 333, 444]
14 # 更改列表内的列表
15 li1[0][1] = 666
16 print(li)
17 # =>[[111, 666], 333, 444]
18 print(li1)
19 # =>[[111, 666], 333, 444]
View Code

2.深拷贝,全部拷贝,克隆一份,需要单独模块执行(copy)

 1 import copy
 2 li = [[111,222],333,444]
 3 li1 = copy.deepcopy(li)  # deepcopy:深拷贝
 4 print(li)
 5 # =>[[111, 222], 333, 444]
 6 print(li1)
 7 # =>[[111, 222], 333, 444]
 8 li1[0][0] = '666'
 9 print(li)
10 # =>[[111, 222], 333, 444]
11 print(li1)
12 # =>[['666', 222], 333, 444]
View Code

 

posted @ 2020-05-04 10:54  星落……  阅读(55)  评论(0编辑  收藏  举报