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

联盟网站做任务微信小程序店铺怎么弄

联盟网站做任务,微信小程序店铺怎么弄,html5手机 网站,开一个淘宝店铺流程标识、相等性和别名 Lewis Carroll 是 Charles Lutwidge Dodgson 教授的笔名。Carroll 先生指 的就是 Dodgson 教授,二者是同一个人。示例 8-3 用 Python 表达了这个 概念。 示例 8-3 charles 和 lewis 指代同一个对象 >>> charles {name: Charles L.…

标识、相等性和别名

Lewis Carroll 是 Charles Lutwidge Dodgson 教授的笔名。Carroll 先生指
的就是 Dodgson 教授,二者是同一个人。示例 8-3 用 Python 表达了这个
概念。

示例 8-3 charles 和 lewis 指代同一个对象

>>> charles = {'name': 'Charles L. Dodgson', 'born': 1832}
>>> lewis = charles ➊
>>> lewis is charles
True
>>> id(charles), id(lewis) ➋
(4300473992, 4300473992)
>>> lewis['balance'] = 950 ➌
>>> charles
{'name': 'Charles L. Dodgson', 'balance': 950, 'born': 1832}

❶ lewis 是 charles 的别名。
❷ is 运算符和 id 函数确认了这一点。
❸ 向 lewis 中添加一个元素相当于向 charles 中添加一个元素。

然而,假如有冒充者(姑且叫他 Alexander Pedachenko 博士)生于 1832
年,声称他是 Charles L. Dodgson。这个冒充者的证件可能一样,但是
Pedachenko 博士不是 Dodgson 教授。这种情况如图 8-2 所示。

image
图 8-2:charles 和 lewis 绑定同一个对象,alex 绑定另一个具有
相同内容的对象
示例 8-4 实现并测试了图 8-2 中那个 alex 对象。
示例 8-4 alex 与 charles 比较的结果是相等,但 alex 不是
charles

>>> alex = {'name': 'Charles L. Dodgson', 'born': 1832, 'balance': 950}>>> alex == charles ➋
True
>>> alex is not charles ➌
True

❶ alex 指代的对象与赋值给 charles 的对象内容一样。
❷ 比较两个对象,结果相等,这是因为 dict 类的 eq 方法就是这
样实现的。
❸ 但它们是不同的对象。这是 Python 说明标识不同的方式:a is not
b。

示例 8-3 体现了别名。在那段代码中,lewis 和 charles 是别名,即
两个变量绑定同一个对象。而 alex 不是 charles 的别名,因为二者绑
定的是不同的对象。alex 和 charles 绑定的对象具有相同的值(== 比
较的就是值),但是它们的标识不同。


每个变量都有标识、类型和值。对象一旦创建,它的标识绝不会
变;你可以把标识理解为对象在内存中的地址。is 运算符比较两个
对象的标识;id() 函数返回对象标识的整数表示。

对象 ID 的真正意义在不同的实现中有所不同。在 CPython 中,id() 返
回对象的内存地址,但是在其他 Python 解释器中可能是别的值。关键
是,ID 一定是唯一的数值标注,而且在对象的生命周期中绝不会变。

其实,编程中很少使用 id() 函数。标识最常使用 is 运算符检查,而
不是直接比较 ID。接下来讨论 is 和 == 的异同。

在==和is之间选择

== 运算符比较两个对象的值(对象中保存的数据),而 is 比较对象的
标识。

通常,我们关注的是值,而不是标识,因此 Python 代码中 == 出现的频
率比 is 高。

然而,在变量和单例值之间比较时,应该使用 is。目前,最常使用 is
检查变量绑定的值是不是 None。下面是推荐的写法:

x is None

否定的正确写法是:

x is not None

is 运算符比 == 速度快,因为它不能重载,所以 Python 不用寻找并调用
特殊方法,而是直接比较两个整数 ID。而 a == b 是语法糖,等同于

a.__eq__(b)

。继承自 object 的__eq__ 方法比较两个对象的 ID,结
果与 is 一样。但是多数内置类型使用更有意义的方式覆盖了__eq__
方法,会考虑对象属性的值。相等性测试可能涉及大量处理工作,例
如,比较大型集合或嵌套层级深的结构时。

在结束对标识和相等性的讨论之前,我们来看看著名的不可变类型
tuple(元组),它没有你想象的那么一成不变。

元组的相对不可变性

元组与多数 Python 集合(列表、字典、集,等等)一样,保存的是对象
的引用。 如果引用的元素是可变的,即便元组本身不可变,元素依然
可变。也就是说,元组的不可变性其实是指 tuple 数据结构的物理内可变。也就是说,元组的不可变性其实是指 tuple 数据结构的物理内。

示例 8-5 表明,元组的值会随着引用的可变对象的变化而变。元组中不
可变的是元素的标识。

示例 8-5 一开始,t1 和 t2 相等,但是修改 t1 中的一个可变元
素后,二者不相等了

>>> t1 = (1, 2, [30, 40])>>> t2 = (1, 2, [30, 40])>>> t1 == t2 ➌
True
>>> id(t1[-1])4302515784
>>> t1[-1].append(99)>>> t1
(1, 2, [30, 40, 99])
>>> id(t1[-1])4302515784
>>> t1 == t2 ➐
False

❶ t1 不可变,但是 t1[-1] 可变。
❷ 构建元组 t2,它的元素与 t1 一样。
❸ 虽然 t1 和 t2 是不同的对象,但是二者相等——与预期相符。
❹ 查看 t1[-1] 列表的标识。
❺ 就地修改 t1[-1] 列表。
❻ t1[-1] 的标识没变,只是值变了。
❼ 现在,t1 和 t2 不相等。

元组的相对不可变性解释了 2.6.1 节的谜题。这也是有些元组不可散列
(参见 3.1 节中的“什么是可散列的数据类型”附注栏)的原因。

复制对象时,相等性和标识之间的区别有更深入的影响。副本与源对象
相等,但是 ID 不同。可是,如果对象中包含其他对象,那么应该复制
内部对象吗?可以共享内部对象吗?这些问题没有唯一的答案。参见下
述讨论。


文章转载自:

http://9QkDHAYz.wpqwk.cn
http://7kF0xUlu.wpqwk.cn
http://RHCN7Ztt.wpqwk.cn
http://mo3Ocbmp.wpqwk.cn
http://Qffagdwi.wpqwk.cn
http://iXPCAzm0.wpqwk.cn
http://u7QJTZKI.wpqwk.cn
http://v1LiQH2a.wpqwk.cn
http://h5Jfy51I.wpqwk.cn
http://L9VeyPan.wpqwk.cn
http://Kfj2jqvz.wpqwk.cn
http://nI85SqDR.wpqwk.cn
http://35e77INf.wpqwk.cn
http://13AVCS5e.wpqwk.cn
http://YJPCtBZe.wpqwk.cn
http://zjHwMSJk.wpqwk.cn
http://WrXuBnHz.wpqwk.cn
http://3JNqpXkF.wpqwk.cn
http://NQZe4mMM.wpqwk.cn
http://sVwm6iv9.wpqwk.cn
http://wpVUtxQQ.wpqwk.cn
http://qLAK7Gyp.wpqwk.cn
http://7i3NPoH5.wpqwk.cn
http://GXpZYJwq.wpqwk.cn
http://ZNagA8IB.wpqwk.cn
http://gLfeLMnx.wpqwk.cn
http://GkgG7XLH.wpqwk.cn
http://TrwNI53M.wpqwk.cn
http://joV0VPJI.wpqwk.cn
http://7YQIBTRK.wpqwk.cn
http://www.dtcms.com/wzjs/765800.html

相关文章:

  • 实木复合门网站建设价格合益环保东莞网站建设
  • 怎么创建自己公司的网站网站建设最新技术
  • 厦门做网站多少钱做网站的结论与心得
  • 如何在凡科建设网站系统优化建议
  • 河南建达工程建设监理公司网站网站开发程序员招聘
  • 提供网站设计方案公司怎么开自己的微信公众号
  • 奉化市建设局网站wordpress小说采集
  • html5网站修改建设网站 系统占用空间
  • 长沙市建设网站南通做百度网站的公司
  • 个人兼职做建设网站天猫商城
  • 郑州轨道网站开发企业网站托管备案
  • 网站建设方案网站建设专家收费标准
  • 给客户做一个网站ppt怎么做it外包企业
  • 昆明网站设计制造网站建设研究意义
  • 网站建设属于哪个行业分类wordpress输入密码访问
  • 网站建设文化方案家在临深业主论坛家在深圳
  • 网站添加百度地图导航唯品会信息科技有限公司
  • 中国古风网站模板电商个人网站建设
  • 做公众号商城原型的网站asp做网站上传文件系统
  • 自己做的网站打开速度慢网站后台怎么给图片做水印
  • 开个送快餐网站怎么做团队协同网站开发
  • 电子政务和网站建设自评2017 上海网站备案
  • 重庆手机模板建站wordpress 编辑器 国外
  • 怎么做跳转不影响原网站排名网站建设优化两千字
  • 太原网站建设需要多少钱做经营性的网站需要注册什么条件
  • 公司做网站要三千多吗永康网站建设优化建站
  • wordpress文章站重庆网站推广哪家服务好
  • 做俄语网站建设成都网络运营外包
  • 交流稿 网站建设怎样查看网站开发语言
  • 网站开发属于计算机系统开发吗商业网站首页怎么做