python 运算符 is 与 is not 的理解
is 与 is not 的理解
is 是判断两个标识符是不是引用同一个对象, 类似于id(a) = id(b) ,如果引用的是同一个对象则返回 True,否则返回 False
注意python 中id()函数是获取对象的内存地址
is not 是判断两个标识符是不是引用自不同对象, 类似 id(a) != id(b)。如果引用的不是同一个对象则返回结果 True,否则返回 False。
下面举个例子说下
定义2个列表a和b 如下
a = [1, 2, 3] b = [1, 2, 3]
打印下a is b 的结果
a = [1, 2, 3]
b = [1, 2, 3]
print(a is b) # 打印结果为False
说明列表a 和列表b 的内存地址不相同
下面在使用下is not
a = [1, 2, 3]
b = [1, 2, 3]
print(a is not b) # 打印结果为True
-------------------------------------------------------下面是自己疑惑的知识补充----------------------------------------------------------------------------------------
看到这相比大家已经理解的is 与 is not ,这里我没有使用int 举例子,因为我发现,使用int 的时候与网上说的有些不一样的地方
比如,使用开发工具为pycharm, python 版本为3x
a = 500000
b = 500000
print(a is b) # 打印结果为True
打印截图
很多人说int 值有范围大于256 a is b 就返回false ,但是这个50万这个值很大了吧,换是True, 百度了下有人说pycharm 对int值有优化,
那下面使用float 值在看下
a = 3.14
b = 3.14
print(a is b) # 打印结果为True
打印结果仍然为True,按理说应该为false 来的,
下面是个人参考部分人观点认为 : python 为了性能考虑,对于值相同的不可变对象,都不会重新创建新的地址来存储对象,而对于可变对象,则会重新开辟空间
这样很很容易理解了.
python 运算符 is 与 is not 的理解相关推荐
- 一篇文章带你了解Python运算符重载
回复"python"即可获赠从入门到进阶共10本电子书 今 日 鸡 汤 不堪玄鬓影,来对白头吟. 您可以根据所使用的操作数来更改Python中运算符的含义.这种做法称为运算符重载, ...
- python ** 运算符_Python入门(9)运算符 — 位运算符、成员运算符、身份运算符...
作者:猿人曰 在上一章中我们讲了算术运算符.比较运算符.赋值运算符.逻辑运算符.本章我们来讲:位运算符.成员运算符.身份运算符. 位运算符 位运算符是把数字变成二进制,一位一位的去进行运算. 位运算 ...
- Python 运算符与数据类型
Python 运算符 运算符用于执行程序代码运算,会针对一个以上操作数项目来进行运算,在Python中运算符大致可以分为7种类型:算术运算符.比较运算符.赋值运算符.逻辑运算符.位运算等,下面的例子将 ...
- Python 运算符及其优先级总结大全(新手必收藏)
众所周知,在Python中运算符是非常重要的一部分,没有它们我们就不能写出栩栩如生的程序,那么它们具体有哪些类别呢?分别又有什么作用呢?优先级的情况优势怎样的呢?今天博主就带你走近Python运算符! ...
- Python 运算符与数据类型(2)
Python 的创始人为吉多·范罗苏姆(Guido van Rossum).1989年的圣诞节期间,吉多·范罗苏姆为了在阿姆斯特丹打发时间,决心开发一个新的脚本解释程序,作为ABC语言的一种继承.Py ...
- 一木.溪桥学Python-03: Python 运算符
一木.溪桥 在Logic Education跟Amy学Python 12期:Python基础课 一木.溪桥学Python-03: Python 运算符 日期:2020年12月18日 学习目标: 算术. ...
- python运算符的分类_Python运算符有哪些类型?Python学习
学习Python的时候,我们会遇到各种各样的内容,比如说运算符,近期有很多小伙伴都在问:Python运算符有哪些?运算符有哪些类型?接下来跟着小编一起来看看吧. Python运算符包括:算术运算符.关 ...
- python ** 运算符_Python从入门到放弃运算符(2)
摘要:上一篇Python从入门到放弃-运算符(1),讲了Python的运算符中的算术运算符.赋值运算符.比较(关系)运算符,这篇继续讲Python的运算符. 逻辑运算符 逻辑运算符是对真和假两种布尔值 ...
- python叫什么-什么叫Python运算符重载
什么叫Python运算符重载 Python中每个数据类型都有其独特的操作方法,例如列表类型支持直接做加法操作实现添加元素的功能,字符串类型支持直接做加法实现字符串的拼接功能,也就是说,同样的运算符对于 ...
最新文章
- 刘光毅:频谱统一推进5G尽早商用 4G网络向5G平滑演进
- 测试用例设计方法_测试用例设计方法——流程分析法(场景法)
- oracle 12.1的那些坑
- linux服务器数据转发,Linux云服务器如何使用iptables做流量转发?
- 通用算法-sql相似度模糊匹配
- spring调用存储过程
- Eigen求解数学问题(二)
- Curator实现分布式锁的基本原理-构造函数
- 给SAP Spartacus B2B list增加用户提示信息
- java ioexception异常_12. Java IO: 异常处理
- 如何保证对象的唯一性
- Oracle 9i DBA Fundamentals I学习笔记(六)
- 干货!flask登录注册token验证接口开发详解
- python高手养成_Python用PyQt5制作颜色对话框,PyQt图形界面编程之QColorDialog
- 2019写给对象的话_数组方法写给女友的一系列 JS 数组操作(建议收藏 | 内附思维导图)...
- eclipse连接MySQL,进行增删改查
- 手机短信注册页面h5css3+html5模板
- 分枝定界法,例题梳理
- 计算机u盘设备无法启动不了怎么办,U盘无法弹出说正在占用怎么办?Windows无法停止设备解决方法...
- 【正点原子FPGA连载】第三十三章环境光传感器实验 -摘自【正点原子】新起点之FPGA开发指南_V2.1
热门文章
- 【Kaggle Learn】Python 5-8
- 计算机如何表示色彩?
- Mysql函数group_concat、find_in_set 多值分隔字符字段进行数据库字段值翻译
- python中排序英文单词怎么写_Python实现对文件进行单词划分并去重排序操作示例...
- 关键任务应用程序依赖于故障保护存储器
- 2021年大数据环境命令(一):常用命令汇总
- Laravel中Redis的配置和使用
- cad沿线插入块 lisp_CAD制图软件中如何快速绘制推拉窗平面简图
- python 内置函数map的使用
- python 正则表达质 re.sub() 的使用