深浅拷贝

一.内存存储机制

a = 1
b=a
b=2
print('a')

a=1: 内存会为1划分一块空间,将a指向1,

b=a  :将b指向a指向的空间1

b=2 : 内存会开辟一块新空间2,将b指向新空间,而a未改变。

不可变类型都不是在原来的空间更改,是重新开辟了空间

二.浅拷贝

str1=str2//引用,没有拷贝,完全用一块地址,更改是在该空间

 str.copy()//浅拷贝,只拷贝了一层,是str ing中的方法,第二层是用指针指向的

copy.deepcopy(str)//深拷贝,完全拷贝了一份

import  copy
husband = ["xiaohu",123,[10000,3000]]
wife = husband.copy()
wife[0]='xiaohong'
wife[2][1]=[1000]

xiaosan =copy.deepcopy(husband)
xiaosan[0] ='lili'
xiaosan[2][1]=0
原文地址:https://www.cnblogs.com/gjx1212/p/11690762.html