首页 > 编程语言 >Python 教程之运算符(14)Python中==和is运算符的区别

Python 教程之运算符(14)Python中==和is运算符的区别

时间:2022-10-04 16:04:21浏览次数:63  
标签:False 14 Python list1 list3 list2 运算符 print

相等运算符 (==) 是 Python 中的比较运算符,用于比较两个操作数的值并检查值是否相等。而“ is” 运算符是标识运算符,用于检查两个操作数是否引用同一个对象(存在于同一个内存位置)。

插图:

# 等式算子
>>> a=10
>>>b=10
>>>a==b
True

>>>a=10
>>>id(a)
2813000247664

>>>b=10
2813000247664 # a 和 b 都指向同一个对象

>>>a is b
True

>>>c=a # 这里变量 a 被分配给新变量 c,它保存相同的对象和相同的内存位置

>>> id(c)
2813000247664

>>>a is c
True

示例 1:

# python3 代码说明 == 和is操作符[]是空列表的区别
list1 = []
list2 = []
list3=list1

if (list1 == list2):
print("True")
else:
print("False")

if (list1 is list2):
print("True")
else:
print("False")

if (list1 is list3):
print("True")
else:
print("False")

list3 = list3 + list2

if (list1 is list3):
print("True")
else:
print("False")

输出:

True
False
True
False
  • 如果条件为“真”,则第一个的输出,因为 list1 和 list2 都是空列表。
  • 其次如果条件显示为“False”,因为两个空列表位于不同的内存位置。因此 list1 和 list2 指的是不同的对象。我们可以使用python 中的id()函数来检查它,它返回一个对象的“身份”。
  • 如果条件为“真”,则第三个的输出,因为 list1 和 list3 都指向同一个对象。
  • 如果条件为“False”,则第四个的输出,因为两个列表的串联总是会产生一个新列表。

示例 2

list1 = []
list2 = []

print(id(list1))
print(id(list2))

输出: 

139877155242696
139877155253640

这表明 list1 和 list2 引用了不同的对象。

感谢大家的阅读,有什么问题欢迎在评论区留言

标签:False,14,Python,list1,list3,list2,运算符,print
From: https://blog.51cto.com/haiyongblog/5731294

相关文章

  • Python 教程之控制流(6)打印金字塔图案的程序
    可以使用简单的for循环在python中打印模式。第一个外循环用于处理行数,而内嵌套循环用于处理列数。操作打印语句,可以打印不同的数字图案、字母图案或星形图案。 本文展......
  • Python 教程之控制流(5)Python 中的 range() 与 xrange()
    range()和xrange()是两个函数,可用于在Python的for循环中迭代一定次数。在Python3中,没有xrange,但range函数的行为类似于Python2中的xrange。如果要编写可在......
  • Python 教程之控制流(4)Python 中的循环技术
    Python在各种顺序容器中通过某些内置函数支持各种循环技术。这些方法主要在竞争性编程中非常有用,在各种需要特定技术的项目中也非常有用,这些项目需要使用循环来维护代码的......
  • Python 教程之控制流(8)在 Python 中使用带有 For 循环的 Else 条件语句
    在python中使用带有for循环的else条件语句在大多数编程语言(C/C++、Java等)中,else语句的使用受到if条件语句的限制。但是Python也允许我们在for循环中使用else条件......
  • Python 实现Tracert追踪TTL值
    Tracert命令跟踪路由原理是IP路由每经过一个路由节点TTL值会减一,假设TTL值=0时数据包还没有到达目标主机,那么该路由则会回复给目标主机一个数据包不可达,由此我们就可以获取......
  • Python 入门指南第三节 | Python 简介
    3.Python简介下面的例子中,输入和输出分别由大于号和句号提示符(​​>>>​​​和​​...​​)标注:如果想重现这些例子,就要在解释器的提示符后,输入(提示符后面的)那些不包含......
  • VS Code 和 Python:数据科学的天作之合
    当你将排名第一的代码编辑器与排名第一的数据科学编程语言结合使用时,你会得到什么?一方面,你获得了超过6000万次安装VisualStudioCode的Python扩展。这是迄今为止VS......
  • Python 实现Tracert追踪TTL值
    Tracert命令跟踪路由原理是IP路由每经过一个路由节点TTL值会减一,假设TTL值=0时数据包还没有到达目标主机,那么该路由则会回复给目标主机一个数据包不可达,由此我们就可以获......
  • 【Python】第3章-4 查找指定字符
    本题要求编写程序,从给定字符串中查找某指定的字符。输入格式:输入的第一行是一个待查找的字符。第二行是一个以回车结束的非空字符串(不超过80个字符)。输出格式:如果找到,......
  • 关于python函数中带*星号参数-收集参数的使用说明
    在python中,定时函数时,一般就得确定函数的参数的个数当然函数可以没有参数,也可以指定明确的形式参数的个数,那样在调用这个函数时,实参的个数就需要与形参个数一致defPrin......