国产成人AV无码一二三区,少女1到100集,国产精品久久久久精品综合紧,巜公妇之诱感肉欲HD在线播放

文章 > Python基础教程 > python中比较对象相等方法有哪些?区别是什么?

python中比较对象相等方法有哪些?区别是什么?

头像

小妮浅浅

2020-12-07 10:44:504520浏览 · 0收藏 · 0评论

我们在比较数目是否相等的时候,可以选择一些不同的方法来验证结果。在python中判断对象的相等就不是这么简单,因为也许是判断一个值,也是是判断一个类别,并不是我们在数学中针对于数量的判断。下面小编就为大家讲解两个判断对象的方法,以及在判断对象的区别上有什么不同。

a = [1, 2, 3]
b = [1, 2, 3]
print(a is b)
print(a == b)

大家可以先猜猜结果是什么。我之前说了python的变量就是个便利贴,\[1, 2, 3\]都是直接赋值给两个变量,也就是说生成了两个对象,所以a,b指向的对象不一样。所以结果出来了,**第一个是False,第二个是True**。为什么呢?因为is比较的是对象相同不相同,但是==比较的是值相同不相同。如果打印两个id值的话,显然是不同的。

print(id(a), id(b))# 结果1735698385160 1735679028936

在用==进行判断的时候实际是调用魔法函数__eq__()来判断他们的值是否相等的。

总的来说,我们在判断是否是同一个对象的时候就用is,不要用==,所以在判断该对象是什么类型的时候建议用is或者直接用isinstance()这个方法。

class Person():
   pass
p = Person()
print(type(p) is Person)  # 结果 True

 总结:

  • == 是比较两个对象的「内容」是否相等,即两个对象的“值“”是否相等,不管两者在内存中的引用地址是否一样。

  • is 比较的是两个实例对象是不是完全相同,它们是不是同一个对象,占用的内存地址是否相同。即is比较两个条件:1.内容相同。2.「内存中地址」相同。

  • 使用is注意python对于小整数使用对象池存储问题,和字符串的intern机制存储问题,并且命令行运行和Pycharm运行有点不一样,因为Pycharm对解释器进行了优化。

  • python中对于None值的比较:使用is


以上就是我们在python中判断相等所用到的is和==,在名称上都是简单好记,用法不难,但需要小伙伴们学习的时候进行区别和理解。

关注

关注公众号,随时随地在线学习

本教程部分素材来源于网络,版权问题联系站长!

《爆乳女警2》完整版| 女士泳衣全透明| 一家乱战1-13集小说免费阅读| 99精产国品一二三产区区别电影| 《特殊的补课方式》| 王娟被老赵一夜干4次| 成品PPT网站大片入口| 姐妹花齐飞| 在床上的72种扦插方法| 女生的隐私曝光| 九九在线观看免费播放大全电视剧 | 自己怎么玩隐私位置游戏| 胸大美女| 少妇洗澡被强公日日澡-百度 | 卫生间被教官做好爽HH视频| 美乳| 巨乳症| 老公在洗澡我被公干日本 | 美国A片巜豪妇荡乳》| 双人床上剧烈运动会怎么消除| 日本大片PPT免费PPT| 《訾花交换做爰》| 妈妈你真棒里面的插曲叫什么| 窝窝影院在线观看免费播放电视剧| 伦理《少妇的滋味》完整版| 成全观看高清完整版| 三个老头拥着躁我一晚| 跳舞| 保姆的特殊待遇5| 千金归来在线观看| 暴躁少女CSG0免费观看| 《桃色》| 妇女之友| 三亚私人高清影院的更新情况| 俄罗斯大扔子视频观看| 免费高清在线观看免费的PPT软...| 强行挺进朋友漂亮人妻身体| 偷偷在线观看免费高清电视剧推荐| 性课被老师当教具CAOH视频| 樱花视频在线观看免费高清电视剧| 《法国少女3》高清