时间:2021-05-23
Python中的is和==比较两个对象的两种方法
在Python中有两种方式比较两个对象是否相等,分别是is和==,两者之间是不同的
对于:
>>> n = 1>>> n is 1True>>> b = '1'>>> b is 1False>>> n == bFalse由于1和'1'不管在值上面还是在引用上面都不同,所以结果都为false
对于:
>>> n = 1>>> n is 1True这里有一个知识点,简单来说,对于整形这种primitive type,引用比较就是值比较,然而,Python在实现整型中采用了这种方式,对于位于-5到256之间的数字,在内存中保留数组存储这些数字,下次使用时候直接引用。而在此范围外的数字,则会新建int对象
举个简单的example,如下代码所示:
#a和b的值超出256>>> a = 257>>> b = 257>>> a is bFalse#a和b的值在-5和256之间>>> a = 256>>> b = 256>>> a is bTrue如上例子所示,只要是在-5~256之间的整形,python不会给变量初始化新的内存空间,但是一旦超出256,则会分配新的空间。
通过打印两个对象的id也可以直接的看出两个对象内存地址的区别,如下所示:
#a和b的值超出256>>> a = 257>>> b = 257>>>>>>>>> id(a)140638347685960>>> id(b)140638347686008#a和b的值在-5和256之间>>> a = 256>>> b = 256>>> id(a)140638347656864>>> id(b)140638347656864以上就是Python is和==的对比的详解,如有疑问请留言或者到本站社区交流讨论,感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!
声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。
本文实例讲述了JavaScript比较两个对象是否相等的方法。分享给大家供大家参考。具体如下:在Python中可以通过cmp()内建函数来比较两个对象所包涵的数
Javascript有两种方法来判断两种值是否相等。相等符号相等符号由两个等号组成:==Javascript是弱类型语言。这就意味着相等符号为了比较两个值将会强
python怎么区分不同数据类型?Python判断变量的数据类型的两种方法一、Python中的数据类型有数字、字符串,列表、元组、字典、集合等。有两种方法判断一
1.Object类的equals()方法:比较两个对象是否是同一个对象,equals()方法比较两个对象,是判断两个对象引用指向的是同一个对象,即比较2个对象的
jquery的find()方法与filter()方法对于初学者来说容易混淆,在这里对这两个方法通过一个小例子来进行比较和说明。旨在了解这两种方法的区别。html