python中的is与==
程序员文章站
2022-04-10 14:55:26
...
>>> a = [1, 2, 3]
>>> b = a[:]
>>> b
[1, 2, 3]
>>> id(a)
140278317281792
>>> id(b)
140278317209936
>>> a is b
False
>>> a == b
True
解释:
上述代码中,将a中的元素赋给了b,但是b是新的一个列表,因此与a的地址是不同的。id()
方法会将对象的内存输出出来,可以看到a与b输出的地址确实不同。
接下来,is
方法是判断a与b的地址是否严格相等,若严格相等,则输出true
。
而==
方法判断的是两者的值是否相等,会调用类中重写的__eq__(self, obj)
方法。
上一篇: Java中Long类型数据相等比较问题
下一篇: 前端面试常考的有关浏览器方面的知识
推荐阅读
-
Ubuntu与windows双系统下共用MySQL数据库的方法
-
asp.net实现在XmlTextWriter中写入一个CDATA的方法
-
SpringBoot中logback日志保存到mongoDB的方法
-
聊聊Java并发中的Synchronized
-
iOS中解决Xcode 8控制台乱码的方式
-
ASP.NET 中的Application详解
-
浅谈开启magic_quote_gpc后的sql注入攻击与防范
-
深入分析java并发编程中volatile的实现原理
-
ASP.NET中 ObjectDataSource控件的DataObjectTypeName属性
-
iOS中tableview 两级cell的展开与收回的示例代码