1. 标准数据类型
共六个
不可变数据(3 个)
Number(数字)、String(字符串)、Tuple(元组);
可变数据(3 个)
List(列表)、Dictionary(字典)、Set(集合)。
2. 注意点
当进行修改操作时,可变类型传递的是内存中的地址。也就是说,直接修改内存中的值,并没有开辟新的内存。
不可变类型被修改时,并没有改变原内存地址中的值,而是开辟一块新的内存,将原地址中的值复制过去,对这块新开辟的内存中的值进行操作。
考查可变与不可变类型的深浅拷贝
import copy
at = (1, 2)
al = [1, 2]
bt = copy.copy(at)
ct = copy.deepcopy(at)
print(id(at), id(bt), id(ct))
# 140212629476104 140212629476104 140212629476104
bl = copy.copy(al)
cl = copy.deepcopy(al)
print(id(al), id(bl), id(cl))
# 140212630232968 140212630233032 140212630237320