is和==的关系

Python中is和==的关系

is判断两个变量是不是指的是同一个内存地址,也就是通过id()函数判断

==判断两个变量的值是不是相同

a = [1, 2, 3, 4]
b = [1, 2, 3, 4]
print(id(a))		# 2298268712768
print(id(b))		# 2298269716992
print(a is b)		# False
print(a == b)		# True

这里有一种特殊情况:

a = 1
b = 1
print(id(a))	# 140705217569576
print(id(b))	# 140705217569576
print(a is b)	# True
print(a == b)	# True

原理是:当我们已有个变量是小整数或小段的字符串,再次建立相同的小整数或小字符串时,python不会重新开辟一个内存空间,而是用指针将这个变量指向我们已经创建的内存空间,这个属于python内部的优化机制

相关推荐

  1. is==关系

    2024-05-13 05:44:02       29 阅读
  2. 域名ip关系

    2024-05-13 05:44:02       50 阅读
  3. PCIe物理层IPGT口关系

    2024-05-13 05:44:02       28 阅读
  4. RK3568 CIFISP关联

    2024-05-13 05:44:02       65 阅读
  5. CPU密集型IO密集型对 CPU内核之间关系

    2024-05-13 05:44:02       59 阅读
  6. MSSMTU关系

    2024-05-13 05:44:02       64 阅读

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-05-13 05:44:02       94 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-05-13 05:44:02       100 阅读
  3. 在Django里面运行非项目文件

    2024-05-13 05:44:02       82 阅读
  4. Python语言-面向对象

    2024-05-13 05:44:02       91 阅读

热门阅读

  1. 个人工控方面收藏网址记录(持续更新中)

    2024-05-13 05:44:02       30 阅读
  2. 一文搞懂MongoDB面试题(2万字长文)

    2024-05-13 05:44:02       28 阅读
  3. Qt自动形成父子关系的函数

    2024-05-13 05:44:02       30 阅读
  4. QT--3

    QT--3

    2024-05-13 05:44:02      30 阅读
  5. k8s job

    k8s job

    2024-05-13 05:44:02      29 阅读
  6. Kotlin语言泛型的形变是什么?

    2024-05-13 05:44:02       31 阅读
  7. undolog

    undolog

    2024-05-13 05:44:02      22 阅读
  8. 【C++】手搓读写ini文件源码

    2024-05-13 05:44:02       25 阅读
  9. 如何创建族表

    2024-05-13 05:44:02       29 阅读
  10. [UUCTF 2022 新生赛]ez_unser

    2024-05-13 05:44:02       32 阅读
  11. 一篇简单易懂的十大机器学习算法

    2024-05-13 05:44:02       28 阅读
  12. AtCoder Beginner Contest 353

    2024-05-13 05:44:02       32 阅读
  13. c#设置或者获取一个泛型整数指定bit的值

    2024-05-13 05:44:02       34 阅读
  14. iOS 沙盒图片的存取

    2024-05-13 05:44:02       35 阅读