‘’==‘’: 如果对象的地址一样,会直接返回Ture,如果地址不一样才会比较内容,比较左右两边对象的内容是否一致,默认调用对象的__eq__魔法方法.
is : 比较两边对象的地址是否一致
浅拷贝:复制一份内容相同,地址也相同的备份(对于可变类型数据)
深拷贝:复制一份内容相同,地址不同的备份(对于可变类型数据)
不可变类型的对象,对于深浅拷贝毫无影响,最终的地址值和值都是相等的。
一、copy模块
copy.copy方法: 浅拷贝
复制一份内容相同但是地址不同的拷贝。这份拷贝里的单个内容地址可能与原件地址相同,这是因为对于不可变的数据类型,python底层实现了一个字符串驻留区和小整数池。对于可变类型的数据,两个对象都指向同一个地址。修改原件里的不可变类型的数据,拷贝内容不改变,而修改原件的可变数据类型,拷贝内容也随之改变。
**copy.deepcopy: **深拷贝
复制一份内容相同但是地址不同的拷贝。对于可变类型的数据,会生成一个新的地址空间
列表自带的copy,切片为浅拷贝