Python里面的 【is】 跟【==】的区别,看完如下代码+注释你就彻底懂了

论坛 期权论坛 编程之家     
选择匿名的用户   2021-6-2 13:46   11   0

Python里面的 【is】 跟【==】的区别,看完如下代码+注释你就彻底懂了

代码如下↓:

#通过一个变量给另外一个变量赋值  内存地址也一样
bedroom="枕头"
pillow=bedroom
print(id(bedroom),id(pillow))
print(bedroom is pillow)
print(bedroom==pillow)

print("++++++分割线++++++")

#通过给不同的变量赋值相同的内容(字符串的内容【不是】简单的字母,比如是汉字 空格,特殊字符等)
bedroom="枕头"
pillow="枕头"
print(id(bedroom),id(pillow))
print(bedroom is pillow)# is  比较的是变量的内存地址,如果是单独赋值(中文),变量地址不一样
print(bedroom==pillow)# == 比较的是变量的内容,所以运行后是True   

print("++++++分割线++++++")

#通过给不同的变量赋值相同的内容(字符串的内容【是】简单的字母,纯字母)
bedroom="ABDDccd"
pillow="ABDDccd"
print(id(bedroom),id(pillow))
print(bedroom is pillow)# is  比较的是变量的内存地址,如果是单独赋值(纯英文字母),变量地址一样【区别于中文汉字】
print(bedroom==pillow)# == 比较的是变量的内容,所以运行后是True   

运行结果如下↓:

1440605561744 1440605561744
True
True
++++++分割线++++++
1440610120400 1440610120496
False
True
++++++分割线++++++
1440608556784 1440608556784
True
True

jupyter notebook 运行截图如下↓:

分享到 :
0 人收藏
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

积分:3875789
帖子:775174
精华:0
期权论坛 期权论坛
发布
内容

下载期权论坛手机APP