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

python == 与 is区别

刷到一个面试题 python中 == 与 is 的区别

根据以往的经验,这个问题应该考察的是运算符根据地址 还是值进行比较的

s1 = ['a']
s2 = ['a']
s3 = s1
print(s1 == s2)  # True  值相等
print(s1 == s3)  # True  值相等
print(s1 is s2)  # False 值相等,引用地址不相等
print(s1 is s3)  # True  值相等,引用地址相等

根据上面的情况,得到的结论:

  • ==:值相等性判断
  • is:判断两个标识符是不是引用自一个对象,x is y, 类似 id(x) == id(y) , 如果引用的是同一个对象则返回 True,否则返回 False

再看个例子

>>> str1='sten_waves'
>>> str2='sten_waves'
>>> str1 is str2
True

先说一下前面的结论是对的,这个例子中str1和str2的地址是相同的,原因是内存驻留机制,可以参考:Python中的字符串驻留机制_在python中,任意长的字符串都遵守驻留机制。-CSDN博客

http://www.lryc.cn/news/412819.html

相关文章:

  • STM32学习笔记1---LED,蜂鸣器
  • 动手学强化学习 第 15 章 模仿学习 训练代码
  • 第一阶段面试问题(前半部分)
  • 《数学教学通讯》是一本怎样的刊物?投稿难吗?
  • <机器学习> K-means
  • 我们如何优化 Elasticsearch Serverless 中的刷新成本
  • MySQL半同步复制
  • [一本通提高数位动态规划]数字游戏:取模数题解
  • [Day 39] 區塊鏈與人工智能的聯動應用:理論、技術與實踐
  • OpenStack入门体验
  • 预测未来 | MATLAB实现RF随机森林多变量时间序列预测未来-预测新数据
  • iOS 系统提供的媒体资源选择器(UIImagePickerController)
  • 电脑如何扩展硬盘分区?告别空间不足困扰
  • 论文阅读:Mammoth: Building math generalist models through hybrid instruction tuning
  • 什么样的双筒式防爆器把煤矿吸引?
  • 如何保证冰河AL0 400G 100W 的稳定运行?
  • 剪画小程序:巴黎奥运会,从画面到声音!
  • 【leetcode详解】心算挑战: 一题搞懂涉及奇偶数问题的 “万金油” 思路(思路详解)
  • 【资料集】数据库设计说明书(Word原件提供)
  • MySQL 常用查询语句精粹
  • hive的内部表(MANAGED_TABLE)和外部表(EXTERNAL_TABLE)的区别
  • 【AutoSar网络管理】验证ecu能够从RepeatMessage状态切换到ReadySleep
  • js逻辑或(||)和且()
  • ElasticSearch入门(六)SpringBoot2
  • vue项目Nginx部署启动
  • Duplicate class kotlin.collections.jdk8.CollectionsJDK8Kt found in modules。Android studio纯java代码报错
  • filebeat
  • matlab y=sin(x) - 2/π*(x)函数绘制
  • HyperDiffusion阅读
  • 分治思想 排序数组