国产成人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还是==,相信大家已经明白两个的区别和用法了,小编还是推荐使用==多一点。

关注

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

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

《女教师的味道3》在线观看| 中字HD人妻の亂倫2| 《厨房韵母2》免费观看完整版| 姐姐片多多免费高清电视剧叶玉卿| 《教室里的激情》2| 《特殊游泳教练》| 停电后我和公做了爱| 引诱沉沦BY肉桂笔趣阁小说| 主动把乳头放进男朋友嘴巴里 | 无码| H动漫无遮挡成人H视频| 《特殊游泳教练》| 《湿点》未增减板相似| 放荡的女兵伦理2| 女性穿裤子阴沟凸起是咋回事| 在线观看片免费人成视频| 把老婆闺蜜干了俩次| 可切换老司机模式浏览器| 欧美大妈LOGO大全及价格图| 妈妈叫我戴上避孕套是什么歌| 鹿鞭丸的功效和作用| 《诱人的女房东3》| 女性一晚上3次纵欲导致不孕| 成人做爰100部片| 欧美大妈LOGO大全及价格图| EXO妈妈MV高清在线观看| B站暴躁姐的丈夫是干什么的| 老阿姨高清在线观看电视剧法游戏 | 中文字幕精品无码亚洲字幕一区| 法国巜做爰的禁忌1| 高压监狱4伦理HD| 玉女献身台湾1988版主演是谁| 老人船上弄雨荷1-5节| 孤男寡女免费观看高清电视剧狂飙 | 日本M码和欧洲码的区别AS.| 公车上双乳被两男人夹击电影 | 搞笑视频| 成人电影| BOBO浏览器(海外版)| 二女片免费观看电视剧杨贵妃传 | 欧美电影免费观看电视剧大全