python 浅copy和深deepcopy

来源:互联网 发布:刀剑神域第二季 知乎 编辑:程序博客网 时间:2024/05/22 14:20
import copyperson=["name",["bank_card_id",10000]]#浅copyp1=person.copy()p2=person.copy()print(p1,p2)#第一层完全拷贝不受影响p1[0]="lichen"p2[0]="weidanling"print(p1,p2)#第二层不拷贝,受影响p1[1][1]=9000print(p1,p2)#deepcopy 全是完全拷贝,都不受影响# list=["lichen","weidanling",["money",100000]]# list_deepcopy1=copy.deepcopy(list)# list_deepcopy2=copy.deepcopy(list)# list_deepcopy1[0]="lichen1"# list_deepcopy2[0]="lichen2"# print(list_deepcopy1,list_deepcopy2)# list_deepcopy1[2][1]=9000# list_deepcopy2[2][1]=8000# print(list_deepcopy1,list_deepcopy2)

输出:
[‘name’, [‘bank_card_id’, 10000]] [‘name’, [‘bank_card_id’, 10000]]
[‘lichen’, [‘bank_card_id’, 10000]] [‘weidanling’, [‘bank_card_id’, 10000]]
[‘lichen’, [‘bank_card_id’, 9000]] [‘weidanling’, [‘bank_card_id’, 9000]]