python运算符中is和==有什么区别?这篇文章运用了实例代码展示,代码非常详细,可供感兴趣的小伙伴们参考借鉴,希望对大家有所帮助。
创新互联拥有一支富有激情的企业网站制作团队,在互联网网站建设行业深耕十年,专业且经验丰富。十年网站优化营销经验,我们已为上千家中小企业提供了成都做网站、成都网站制作解决方案,按需求定制网站,设计满意,售后服务无忧。所有客户皆提供一年免费网站维护!
在讲解is和==区别直接先讲解一下内置函数id(),其实在文章 python可变数据类型和不可变数据类型 中也对内置函数id()有过讲解,主要用于获取变量的内存地址!关于内存现在不做过多讲解,你可以把内存地址当作一串数字符号,内存地址就好比每个人都有一个身份证号码一样!
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 | # !usr/bin/env python # -*- coding:utf-8 _*- """ @Author:何以解忧 @Blog(个人博客地址): shuopython.com @WeChat Official Account(微信公众号):猿说python @Github:www.github.com
@File:python_is.py @Time:2019/10/26:25
@Motto:不积跬步无以至千里,不积小流无以成江海,程序人生的精彩需要坚持不懈地积累! """
a=5 b=False c="hello"
print("a内存地址:{}".format(id(a))) print("b内存地址:{}".format(id(b))) print("c内存地址:{}".format(id(c))) |
输出结果:
1 2 3 | a内存地址:1784504608 b内存地址:1784012992 c内存地址:2126520897696 |
如果两个变量的值相等,那么运算符 == 成立,返回True;反之返回False;示例代码如下:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 | a=3 b=3 print(a==b)
# 整数与浮点数的比较 a=3 b=3.0 print(a==b)
a=3 b=2.9999 print(a==b)
# 字符串比较 a="hello world" b="HELLO WORLD" c="hello " d="hello world" print(a==b,a==c,b==c,a==d) |
输出结果:
1 2 3 4 | True True False FalseFalseFalseTrue |
1.两个变量的值相等;
2.变量地址也相同(可以通过内置函数id获取变量内存地址);
如果同时满足以上两个条件,运算符 is 才成立,返回True;反之,不满足其中任何一个条件都会返回False;示例代码如下:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 | a=333333 b=333333.0 print(id(a)) print(id(b))
print(aisb) print("***"*20)
a=3 b=3 print(id(a)) print(id(b))
print(aisb) print("***"*20)
a="hello world" b="HELLO WORLD" c="hello " d="hello world" print(id(a)) print(id(b)) print(id(c)) print(id(d))
print(aisb,aisc,bisc,aisd) |
输出结果:
1 2 3 4 5 6 7 8 9 10 11 12 13 | 2039213240016 2039234381168 False ************************************************************ 1784504544 1784504544 True ************************************************************ 2039217328240 2039217328176 2039217247376 2039217328240 FalseFalseFalseTrue |
看完上述内容,你们对python运算符is和==的区别大概了解了吗?如果想了解更多相关文章内容,欢迎关注创新互联行业资讯频道,感谢各位的阅读!