加载中…
个人资料
晓伟0189
晓伟0189
  • 博客等级:
  • 博客积分:0
  • 博客访问:634
  • 关注人气:0
  • 获赠金笔:0支
  • 赠出金笔:0支
  • 荣誉徽章:
相关博文
推荐博文
正文 字体大小:

is和==之间的不同

(2019-12-05 16:43:30)
分类: python学习笔记
python中的对象包含下面三个基本要素:分别是:id(身份标识)、type(数据类型)、value(值)。

is和==都是对对象进行比较判断用的,但对对象比较判断的内容并不相同。

==比较操作符 和 is同一性运算符区别

==是python标准操作符中的比较操作符,用来判断比较两个对象的value(值)是否相等。

例1:
a = 'xiaowei'
b = 'xiaowei'
a == b
True

例2:
is也被叫做同一性运算符,这个运算符比较判断的是对象间的唯一身份标识,也就是id是否相同。

x = y = [4, 5, 6]
z = [4, 5, 6]
x == y
True
x == z
True
x is y
True
x is z
False

z与x、y的id返回值并不相同。

例3:
a = 1     # 整数类型
b = 1
a is b
True
他们的内存地址是一样的

a = 'xiaowei'  #字符串类型
b = 'xiaowei'
a is b
True

a = {1, 2, 3} #容器类型
b = {1, 2, 3}
a is b
False
他们的内存地址不一样

当a和b为tupl list dict set时,他们的内存地址是不一样的。


0

阅读 评论 收藏 转载 喜欢 打印举报/Report
前一篇:python文件操作
后一篇:lambda匿名函数
  • 评论加载中,请稍候...
发评论

    发评论

    以上网友发言只代表其个人观点,不代表新浪网的观点或立场。

    < 前一篇python文件操作
    后一篇 >lambda匿名函数
      

    新浪BLOG意见反馈留言板 电话:4000520066 提示音后按1键(按当地市话标准计费) 欢迎批评指正

    新浪简介 | About Sina | 广告服务 | 联系我们 | 招聘信息 | 网站律师 | SINA English | 会员注册 | 产品答疑

    新浪公司 版权所有