不可变类型数据(int float str tuple) id
相同不可变数据赋给不同变量时,变量id相同,这是由于不可变数据地址在运行中恒定。
可变类型数据(list set dict)id
相同可变数据赋给不同变量
浅拷贝
-
方法一:.copy() , 可变类型特有
-
方法二,import copy, 使用范围更广
-
注意事项
- 浅拷贝只能拷贝第一层,如果拷贝的数据中,虽然嵌套有可变数据类型 ,但此时内容一样,其id也一样,相当于引用,修改其一,二者皆变
- 浅拷贝只能拷贝第一层,如果拷贝的数据中,虽然嵌套有可变数据类型 ,但此时内容一样,其id也一样,相当于引用,修改其一,二者皆变
深拷贝
不受嵌套可变数据的影响,每次拷贝可变类型数据时重新建立id,用于不破坏原有数据
方法:
import copy
copy.deepcopy()