Python 中is和= = 的比较

本网站用的阿里云ECS,推荐大家用。自己搞个学习研究也不错
Python中的对象包含三要素:id、type、value

其中id用来唯一标识一个对象,type标识对象的类型,value是对象的值

is判断的是a对象是否就是b对象,是通过id来判断的

==判断的是a对象的值是否和b对象的值相等,是通过value来判断的

python is主要是判断2个变量是否引用的是同一个对象,如果是的话,则返回true,否则返回false

>>> a = ‘123’
>>> b = ‘123’
>>> a == b
True
>>> a is b
True
>>>

a is b 返回true,因为变量a和b都存储了字符串’123’对象的地址。

>>> a = ‘123’
>>> b = ‘123456’
>>> a == b
False
>>> a is b
False
>>>

print a is c 返回false,因为变量a和c存储了字符串对象地址不一致。

>>> a = 1
>>> b = 1.0
>>> a is b
False
>>> a == b
True
>>> id(a)
12777000
>>> id(b)
14986000
>>> a = 1
>>> b = 1
>>> a is b
True
>>> a == b
True
>>> id(a)
12777000
>>> id(b)
12777000

推荐阅读:

《Python开发技术详解》.( 周伟,宗杰).[高清PDF扫描版+随书视频+代码] http://www.linuxidc.com/Linux/2013-11/92693.htm

Python脚本获取Linux系统信息 http://www.linuxidc.com/Linux/2013-08/88531.htm

Python 网站文件及数据库备份脚本 http://www.linuxidc.com/Linux/2012-06/62346.htm

Python文件处理:读取文件 http://www.linuxidc.com/Linux/2013-08/88496.htm

如何发布自定义的Python模块 http://www.linuxidc.com/Linux/2013-08/88495.htm

Python爬虫多线程抓取代理服务器 http://www.linuxidc.com/Linux/2013-07/87289.htm

Python中re(正则表达式)模块详解 http://www.linuxidc.com/Linux/2013-08/88588.htm

Python 的详细介绍:<a title="Python" href="../../Linux/

未经允许不得转载:演道网 » Python 中is和= = 的比较

赞 (0)
分享到:更多 ()

评论 0

评论前必须登录!

登陆 注册