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

图片[1]-Python中a is b和a==b的区别?-uusu优素-乐高,模型,3d打印,编程

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

#以下用于示意aisb用法:
>>>a=-5#a,b数值类型
>>>b=-5
>>>aisb
True
>>>a=-6
>>>b=-6
>>>aisb
False
>>>a=256
>>>b=256
>>>aisb
True
>>>a=257
>>>b=257
>>>aisb
False
>>>b='zhaoxuan'#a,b字符串类型
>>>a='zhaoxuan'
>>>aisb
True#简单字符串可用
>>>id(a)
42111997
>>>id(b)
42111997
>>>a='woshizhaoxuan'
>>>b='woshizhaoxuan'
>>>aisb
False#复杂字符串不可用
>>>id(a)
2146074255200
>>>id(b)
2146074255272
>>>a=(1,2,3)#a,b元组类型
>>>b=(1,2,3)
>>>aisb
False
>>>id(a)
2146074256320
>>>id(b)
2146074256378
>>>a=[1,2,3]#a,blist类型
>>>b=[1,2,3]
>>>aisb
False
>>>a={'a':1,'b':2}#a,bdict类型
>>>b={'a':1,'b':2}
>>>aisb
False
>>>a=set([1,2,3])#a,bset类型
>>>b=set([1,2,3])
>>>aisb
False
>>>id(a)
2146074299258
>>>id(b)
2146074299236
原文来自:https://www.py.cn
© 版权声明
THE END
喜欢就支持一下吧
点赞15 分享
评论 抢沙发
头像
欢迎您留下宝贵的见解!
提交
头像

昵称

取消
昵称表情代码图片

    暂无评论内容