当前位置: 首页 > news >正文

企业网站建设优势营销托管全网营销推广

企业网站建设优势,营销托管全网营销推广,四川网站建设设计公司哪家好,新建网站的评估2.3 “is”和“”的区别 在Python编写代码时,经常会遇到需要判断2个对象是否相等的情况,这个时候一般就会想到使用is和,is和好像都可以用来判断对象是否相等,经常会傻傻分不清,但其实这其中还是有区别的。 不过在这之…

2.3 “is”和“==”的区别

在Python编写代码时,经常会遇到需要判断2个对象是否相等的情况,这个时候一般就会想到使用is==is==好像都可以用来判断对象是否相等,经常会傻傻分不清,但其实这其中还是有区别的。
不过在这之前,我们得先了解一些基本知识。
①、在Python中,一切皆对象,比如变量、函数等,都是对象。对象包含3个基本要素:

  • id:身份标识
  • type:数据类型
  • value:值
    ②、在Python中,根据对象的值能否原地修改,分为可哈希和不可哈希。能原地修改的是不可哈希对象,不能原地修改的是可哈希对象。Python常见对象(类型)哈希状态如下:
对象(类型)哈希
数字可哈希
字符串可哈希
列表不可哈希
元组可哈希
集合不可哈希
字典不可哈希

③、在Python中,变量的赋值其实就是贴标签,重新赋值后并不会直接修改变量的值,而是将变量重新指向新的赋值对象。关于这一点请看下面的例子:

from icecream import ic
a = 'A'
b = 'B'
ic(a, id(a), id(b))
a = 'B'
ic(a, id(a))

ic| a: ‘A’, id(a): 1897621655920, id(b): 1897659140592
ic| a: ‘B’, id(a): 1897659140592

④、在Python中,可哈希对象的值一样,那么其标识符(id)也一样。请看下方的例子:

from icecream import ic
a = 'ABC'
b = 'ABC'
ic(id(a), id(b))
ic(id(a) == id(b) == id('ABC'))
c = d = 'DEF'
ic(id(c), id(d))
ic(id(c) == id(d) == id('DEF'))
a = b = c
ic(id(a), id(b), id(c))
ic(id(a) == id(b) == id(c))

ic| id(a): 2682794608816, id(b): 2682794608816
ic| id(a) == id(b) == id(‘ABC’): True
ic| id©: 2682822597040, id(d): 2682822597040
ic| id© == id(d) == id(‘DEF’): True
ic| id(a): 2682822597040, id(b): 2682822597040, id©: 2682822597040
ic| id(a) == id(b) == id©: True

在Python中,==是比较操作符,用来比较两个对象的值是否相等。判断时,相当于调用了对象中的__eq__()方法,即:对象1 == 对象2  对象1.eq(对象2)。
is是同一性运算符,用来判断两个对象的标识符(id)是否一致。即:对象1 is 对象2  id(对象1) == id(对象2)。
对于可哈希对象,由于值一样,则标识符(id)必定一样,is==的结果始终保持一致。
而对于不可哈希对象,就算两个对象的值一样,他们的标识符(id)也不一样。导致is==的结果不一样。如下所示:

from icecream import ic
a = ['ABC']
b = ['ABC']
ic(id(a), id(b))
ic(a is b)
ic(id(a) == id(b) == id(['ABC']))
c = d = ['DEF']
ic(id(c), id(d))
ic(c is d)
ic(id(c) == id(d) == id(['DEF']))
a = b = c
ic(id(a), id(b), id(c))
ic(a is b, b is c)
ic(id(a) == id(b) == id(c))

ic| id(a): 1115121876032, id(b): 1115122037184
ic| a is b: False
ic| id(a) == id(b) == id([‘ABC’]): False
ic| id©: 1115122601024, id(d): 1115122601024
ic| c is d: True
ic| id© == id(d) == id([‘DEF’]): False
ic| id(a): 1115122601024, id(b): 1115122601024, id©: 1115122601024
ic| a is b: True, b is c: True
ic| id(a) == id(b) == id©: True

http://www.ds6.com.cn/news/59884.html

相关文章:

  • 南京开发seo软文推广
  • WordPress建站 网盘视频升华网络推广软件
  • 宁夏网站建设怎么样百度网站推广教程
  • 湖州市建设中心网站2022重大时政热点事件简短
  • 杭州做网站软件利用搜索引擎营销成功的案例
  • 网站开发调用别人网站的组件seo排名软件怎么做
  • 浦元品牌网站建设免费建站哪个最好
  • 免费做app和网站的平台有哪些搜索广告和信息流广告区别
  • 做房地产一级市场的看什么网站互联网营销的方法
  • html中文美食网站培训体系搭建
  • 东莞网站建设.com上海网络营销seo
  • 电大企业网站建设论文范文如何优化seo关键词
  • 电子商务网站有那些功能网站开发建设步骤
  • 佛山网站建设定制沈阳seo优化排名公司
  • 南平住房和城乡建设部网站网络策划营销
  • 营销型网站建设方面的书企业网站建设步骤
  • 做网站有那几种末班网页设计与制作作业成品
  • wordpress次级菜单seo网站是什么意思
  • 大型门户网站 要求下拉框关键词软件
  • 化工企业网站模板郑州网站推广技术
  • 网页设计代码解释河北seo技术培训
  • 建立网站的链接结构有哪几种形式简述其各自的优缺点拓客团队怎么联系
  • ftp网站上传成功后怎么做国际新闻稿件
  • 网站的建设可以起到什么作用关键词调词平台
  • by网站现在的域名百度网站优化软件
  • 网站搭建素材宁德市人民医院
  • 作文网站网址淮北seo
  • 网站管理员怎么联系网站查询域名入口
  • 西安农产品网站建设怎么用手机创建网站
  • 可以自己做图的网站青岛网站快速排名优化