Python中a is b和a==b的区别?

2025-12-02 0 95,670

1、 a == b , 这是一个比较运算符,用于比较两个对象的value(值)是否相同

相同则返回True 否则返回False

示例:

# 以下用于示例 a == b 用法
>>> a = 1 # a, b 数值类型
>>> b = 1
>>> a == b
True
>>> a = 'zhaoxuan'# a,b 字符串类型
>>> b = 'zhaoxuan'
>>> a == b
True
>>> a = [1, 2]# a,b 列表类型
>>> b = [1, 2]
>>> a == b
True
>>> a = 1 # a, b 数值类型
>>> b = 2
>>> a == b
False
>>> a = 'hello'# a,b 字符串类型
>>> b = 'world'
>>> a == b
False
>>> a = [1, 2]# a,b 列表类型
>>> b = [1, 3]
>>> a == b
False

2 a is b,用于比较两个对象的物理id。

如果相同则返回True,否则返回False

示例:

# 以下用于示意 a is b 用法:
>>> a = -5# a, b 数值类型
>>> b = -5
>>> a is b
True
>>> a = -6
>>> b = -6
>>> a is b
False
>>> a = 256
>>> b = 256
>>> a is b
True
>>> a = 257
>>> b = 257
>>> a is b
False
>>> b = 'zhaoxuan'# a, b 字符串类型
>>> a = 'zhaoxuan'
>>> a is b
True# 简单字符串可用
>>> id(a)
42111997
>>> id(b)
42111997
>>> a = 'wo shi zhao xuan'
>>> b = 'wo shi zhao xuan'
>>> a is b
False# 复杂字符串不可用
>>> id(a)
2146074255200
>>> id(b)
2146074255272
>>> a = (1,2,3) # a, b 元组类型
>>> b = (1,2,3)
>>> a is b
False
>>> id(a)
2146074256320
>>> id(b)
2146074256378
>>> a = [1,2,3]  #a,b list类型
>>> b = [1,2,3]
>>> a is b
False
>>> a = {'a':1,'b':2} #a,b dict类型
>>> b = {'a':1,'b':2}
>>> a is b
False
>>> a = set([1,2,3])#a,b set类型
>>> b = set([1,2,3])
>>> a is b
False
>>> id(a)
2146074299258
>>> id(b)
2146074299236

收藏 (0) 打赏

感谢您的支持,我会继续努力的!

打开微信/支付宝扫一扫,即可进行扫码打赏哦,分享从这里开始,精彩与您同在
点赞 (0)

声明:以上部本文内容由互联网用户自发贡献,本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。投诉邮箱:3758217903@qq.com

ZhiUp资源网 常见问题 Python中a is b和a==b的区别? https://www.zhiup.top/6999.html

相关