1、浅拷贝
指重新分配一块内存,创建一个对象,里面的对象是原对象中子对象的引用
2、深拷贝
指重新分配一块内存,创建一个新的对象,并将原对象的元素以递归方式,通过创建新的子对象拷贝到新对象中,因此,新对象和原对象没有任何关联
3、“==”和“is”
“==”是比较两个值是否相等,“is”是判断他们是否指向同一内存地址
“is"效率优于”==",因为"is"只需要获取对象的id进行比较,而"=="需要递归的遍历对象所有值,并逐一比较。
python会把-5到256到证书维持一个数组,起到一个缓存作用。这样,每次试图创建一个-5到256范围内的整型数字时,python会在这个数组中引用,而不是重新开辟一块内存空间
a = 25
b = 25
a == b
True
a is b
True
c = 257
d = 257
c == d
True
c is d
False