纯净、安全、绿色的下载网站

首页|软件分类|下载排行|最新软件|IT学院

当前位置:首页IT学院IT技术

Python之is与==的区别 Python之is与==的区别介绍

梦子mengy7762   2021-09-11 我要评论
想了解Python之is与==的区别介绍的相关内容吗梦子mengy7762在本文为您仔细讲解Python之is与==的区别的相关知识和一些Code实例欢迎阅读和指正我们先划重点:Python之is与==,Python之is与==区别下面大家一起来学习吧

Python有两个用于相等比较的运算符“is”和“==”(等于)在这篇文章中我将教你们两者之间的区别以及通过几个简单地例子说明什么时候使用它们

当我还是一个孩子的时候我们的邻居家有两只双胞胎猫

这两只猫看起来看起来完全一样 - 同样的木炭毛同样敏锐的绿眼睛撇开一些个性怪癖单从它们的外表根本无法区分它们但他们确确实实是两只不同的猫两个不同的生物尽管它们看起来完全一样

就如相等和相同在意思上是有差异的理解这种差异对理解Python中的操作符“is”和“==”是很重要的

“==”更侧重于检测相等:如果这些猫是Python对象我们用“==”比较它们我们会得到“两只猫是相等的”

“is”侧重于比较相同:如果我们用“is”比较它们我们会得到“这是两只不同的猫”

在我把所有的东西都用猫作为类比之前让我们来看看一些真正的Python代码

首先我们将创建一个新的列表对象并将其命名为a然后定义另一个变量b指向同一列表的对象:

Python中“is”和“==”的区别

我们来看看这两个变量我们可以看到它们指向相同的列表

Python中“is”和“==”的区别

因为两个列表对象看起来相同所以当我们使用“==”运算符比较它们的相等性时我们会得到预期的结果:

图片.png

然而这并没有告诉我们a和b是否真的指向同一个对象当然我们知道它们是指向同一个对象的因为我们之前给它们分配了相同的对象但是假设我们不知道我们会发现什么?最后如果你的时间不是很紧张并且又想快速的提高最重要的是不怕吃苦建议你可以联系维:762459510 那个真的很不错很多人进步都很快需要你不怕吃苦哦!大家可以去添加上看一下~

那么将两个变量用“is”操作符进行比较这会证明两个变量是指向同一个列表对象的:

Python中“is”和“==”的区别

我们来看看当我们创建列表对象的相同副本时会发生什么我们可以通过在现有列表上调用list来创建一个名为c的副本:

Python中“is”和“==”的区别

您将再次看到我们刚刚创建的新列表看起来与a和b指向的list对象相同:

Python中“is”和“==”的区别

这就是有趣的地方如果我们使用“==”运算符来比较列表副本c和初始化列表a您希望看到什么答案?

Python中“is”和“==”的区别

好吧我希望这是您所期待的这个结果告诉我们c和a有相同的内容它们被Python认为是相等的但它们是否指向同一个对象?我们来看看is操作符:

Python中“is”和“==”的区别

以上我们得到了不同的结果Python告诉我们c和a指向两个不同的对象尽管它们的内容是相同的最后如果你的时间不是很紧张并且又想快速的提高最重要的是不怕吃苦建议你可以联系维:762459510 那个真的很不错很多人进步都很快需要你不怕吃苦哦!大家可以去添加上看一下~

所以回顾一下我们区分“is”和“==”用以下两个简短的定义:

  • 如果两个变量指向同一个(相同的)对象则“is”表达式为True
  • 如果变量所引用的对象是相等的(有相同的内容)则“==”表达式的值为True

只要记住这个当您需要在Python中使用is和==的时候就会想到一对孪生的猫(狗也一样)您就会知道该用哪个了


相关文章

猜您喜欢

网友评论

Copyright 2020 www.sopisoft.net 【绿软下载站】 版权所有 软件发布

声明:所有软件和文章来自软件开发商或者作者 如有异议 请与本站联系 点此查看联系方式