前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Python 判断 is 与 == 的区别

Python 判断 is 与 == 的区别

作者头像
heasy3
发布2020-08-01 16:04:54
1.7K0
发布2020-08-01 16:04:54
举报

is 用于判断两个变量引用对象是否为同一个, == 用于判断引用变量的值是否相等。

Python中,万物皆对象 每个对象包含3个属性,id,type,value

id就是对象地址,可以通过内置函数id()查看对象引用的地址。

type就是对象类型,可以通过内置函数type()查看对象的类型。

value就是对象的值。

a is b 相当于 id(a)==id(b)

is 比较的是id是不是一样,== 比较的是值是不是一样。

Python会对比较小的整数对象[-5,256]进行缓存,下次用的时候直接从缓存中获取,所以is 和 == 的结果可能相同

另外,但凡是不可变对象,在同一个代码块中的对象,只有是值相同的对象,就不会重复创建,而是直接引用已经存在的对象。

大多数情况下,当用is和==的结果是一样时,用is的效率是会高于==的效率。

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2020-05-12 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档