Skip to content

Is和==的区别

面试题目

  • 级别: L1
  • 知识模块: Python 编程语言

is== 的区别

公司

  • 传音控股

招聘类型

社招

题目解析

本题考察对 Python 运算符的理解

答案

is== 都作为常用的判断语句去进行使用,这两者之间的主要区别是:

  • == 运算符: 只比较两个对象的值,相同返回 True,不同返回 False。
  • is 运算符: 比较两个对象的 id,相同返回 True,不同返回 False。

在这种场景下, 两个判断的执行结果均为 True。

a, b = 1,1
# 判断a,b 是否相等
print(a == b)
print(a is b)

在这种场景下, 两个判断的执行结果均为不一致。

a = [1,2,3]
b = [1,2,3]
# 对比值一致,返回True
print(a == b)
# 对比内存地址不一致,返回False
print(a is b)