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

文章 > Python基础教程 > python运算符中如何选择is和==?

python运算符中如何选择is和==?

python运算符

头像

小妮浅浅

2020-12-11 11:36:363283浏览 · 0收藏 · 0评论

QQ截图20201211113612.png

我们在数学中想要判断两个对象是否相等,可以使用=号。在python中由于比较的数据不一定是数值,所以我们的符号有is和==可以选择。那么在不同的条件下,选择is还是==是有所不同的。下面我们在身份运算符中寻找is和==在判断对象引用上的区别,帮助大家在使用身份运算符时能更好的选择,具体内容如下:


身份运算符是用来判断两个变量是否是引用了相同内存地址的运算符。

两个变量的值相等,它们不一定就是引用了相同的内存地址,但如果两个变量引用了相同的内存地址,那么他们的值必然相等。

身份运算符说白了其实就是is符号。它可以用来比较两个变量是否引用了同一个对象。

>>> a = 3
>>> id(a)
140602638349720
>>> hex(id(a)) # 还原成我们看着更顺眼的16进制,但是本文以10进制地址为主(因为懒)
'0x7fe09a503598'

顾名思义,is是“相同”,而==是指两者之间的”相等“关系。所谓相同,比较的是两者之间的在内存中的位置,

>>> a = 3
>>> id(a)
140602638349720
>>> b = 3 # b指向的是和a指向的同一块地址(但是并不意味这改变了a,b也会相应改变)
>>> id(b)
140602638349720
>>> c = a # a的引用复制给c,在内存中其实是指向了用一个对象
>>> id(c)
140602638349720
>>> a is b
True
>>> a is c
True
>>> b is c
True

我们看到,上面a,b,c的地址相同,所以他们互相之间”相同“

而相等则两者之间的数值对应相等

>>> a = 3
>>> b = a
>>> a = 4
>>> b
3
 
>>> a = [3]
>>> b = [3]
>>> id(a)
4351374184
>>> id(b)
4351374112
>>> a is b
False 
>>> a == b
True
>>> a[0] = 4
>>> b
[3]
 
>>> a = [3]
>>> b = a  # b就是a的引用,占得是同一块地址,而且当a的内容改变时,b也会随之改变,这和上面
# int对象不同,我也不知道为啥要这么搞。
>>> a[0] = 4 
>>> b
[4]

很多人看到这肯定是一锅浆糊了,其实就是一个原则,能用==就不用is。除了一种情况,那就是判断对象是否是None。

>>> if a is None:
...     pass


以上就是我们本篇探究python运算符中在不同的情况下选择is还是==,相信大家已经明白两个的区别和用法了,小编还是推荐使用==多一点。

关注

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

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

《性房纵欲》在线观看| 法国空乘伦理2| 在线天堂WWW在线观看图片| 图书馆挺进她腿间湿润漫画| 99久久国产精品久久99| 黄金网站9.1免费入口| 禁忌:家庭密码| 11人裸体航班女服务员是谁| 女大馒头图片10张| 爸爸汆肉的日常| 摸的下身已洪水泛滥怎么办 | 《吃你吃上瘾》| 《交换温柔》免费观看全集完整版| 日本大片又大又好看的PPT| 灯草和尚 小说| 《诱人的女房东3》| 《后宫狂热》动浸全集完整| 《后宫狂热》动浸全集完整| 美女和男生一起努力的生孩子视频.. | 闺蜜老公把我压在怀里| 教练车内含乳挺进她漫画| 按摩师把我添高潮了6次| 女性三角毛毛区有片毛掉光正常吗 | 我兄弟的妈妈免费观看电视剧| 美国禁忌2在线观看电视剧| 亚洲AV少妇高潮嗷嗷叫| 黑瓜网-每日大赛 反差| 《法国空乘9》| 儿媳妇长太漂亮免费观看电视剧| 3DMAX9喷射2D3D区别漫.| 天降奇缘| 做一次爱下面多久才能恢复| 西游记| 妈妈你真棒插曲快来救救我电影| 欧美电影免费观看电视剧大全| 女性LOGO大全图片| 巨茎挺进李淑芬的体内视频| 蜜桃3D| 3DMAX9喷射2D3D区别漫..| 瑜伽裤透明全毛露丁字裤| 老公把闺蜜干的嗷嗷叫