2018-08-19
2018-08-19 本文已影响0人
白s圣诞节
一、==和is的区别:
*==
比较两个对象是否相等
a = [11,22,33]
b = a
a == b
True
a = 23
b = a
a == b
True
a = [11,22,33]
b = [11,22,33]
a == b
True
a = 24
b = 24
a == b
True
*is
比较两个引用是否指向了同一个对象(引用比较)(大于256就是false)
a = 180
b = 180
a is b
True
a = 257
b = 257
a is b
False
a = 257
b = a
a is b
True
a = 180
b = a
a is b
True
a = [11,22]
b = [11,22]
a is b
False
a = [11,22]
b = a
a is b
True
二、深拷贝、浅拷贝
*浅拷贝:(拷贝了引用,并没有拷贝内容)
![](https://img.haomeiwen.com/i13008127/d1d072710fd217f8.png)
![](https://img.haomeiwen.com/i13008127/40e89157b397289e.png)
*深拷贝:(对于一个对象所有层次的拷贝)
![](https://img.haomeiwen.com/i13008127/3c806d9d119190ba.png)
![](https://img.haomeiwen.com/i13008127/fa8acc4639ded6d5.png)