python的id()函数解密过程


Posted in Python onDecember 25, 2012

>>> a = 2.5
>>> b = 2.5
>>> c = b
>>> a is c
False

>>> a = 2
>>> b = 2
>>> c = b
>>> a is c
True

今天在使用is函数的时候去打印a,b分别被赋值为2.5 和2的情况,发现:
>>> a = 2
>>> b = 2
>>> id(a)
21132060
>>> id(b)
21132060
>>> a = 2.5
>>> b = 2.5
>>> id(a)
19622112
>>> id(b)
29321464

当a,b为2的时候id相同,而为2.5的时候不同,这种情况在string字符串的时候也会出现,即当很短的a,b赋值很短的字符串的时候,它们的id值相同,而很长的则不会;
之后,可以得到一个简单的结论就是:解释器在对值很小的int和很短的字符串的时候做了一点小优化,只分配了一个对象,让它们id一样了。

Python 相关文章推荐
在Python中使用itertools模块中的组合函数的教程
Apr 13 Python
python使用post提交数据到远程url的方法
Apr 29 Python
Python的Django框架中从url中捕捉文本的方法
Jul 20 Python
Django使用httpresponse返回用户头像实例代码
Jan 26 Python
解决python3中解压zip文件是文件名乱码的问题
Mar 22 Python
selenium+python实现1688网站验证码图片的截取功能
Aug 14 Python
自学python的建议和周期预算
Jan 30 Python
Pandas 重塑(stack)和轴向旋转(pivot)的实现
Jul 22 Python
画pytorch模型图,以及参数计算的方法
Aug 17 Python
基于Python执行dos命令并获取输出的结果
Dec 30 Python
win10下python3.8的PIL库安装过程
Jun 08 Python
Python 文本滚动播放器的实现代码
Apr 25 Python
python cookielib 登录人人网的实现代码
Dec 19 #Python
python 多线程应用介绍
Dec 19 #Python
Python多线程学习资料
Dec 19 #Python
python搭建简易服务器分析与实现
Dec 15 #Python
Python笔记(叁)继续学习
Oct 24 #Python
python笔记(2)
Oct 24 #Python
python笔记(1) 关于我们应不应该继续学习python
Oct 24 #Python
You might like
经典的星际争霸,满是回忆的BGM
2020/04/09 星际争霸
php函数之子字符串替换 str_replace
2011/03/23 PHP
PHP 时间日期操作实战
2011/08/26 PHP
探讨PHP中this,self,parent的区别详解
2013/06/08 PHP
在PHP中使用X-SendFile头让文件下载更快
2014/06/01 PHP
PHP与jquery实时显示网站在线人数实例详解
2016/12/02 PHP
PHP封装函数实现生成随机的字符串验证码
2017/01/24 PHP
在js文件中写el表达式取不到值的原因及解决方法
2013/12/23 Javascript
JavaScript代码应该放在HTML代码哪个位置比较好?
2014/10/16 Javascript
使用vue.js编写蓝色拼图小游戏
2017/03/17 Javascript
js弹性势能动画之抛物线运动实例详解
2017/07/27 Javascript
详解A标签中href=""的几种用法
2017/08/20 Javascript
JS实现浏览上传文件的代码
2017/08/23 Javascript
javascript填充默认头像方法
2018/02/22 Javascript
vue请求本地自己编写的json文件的方法
2019/04/25 Javascript
Vue函数式组件-你值得拥有
2019/05/09 Javascript
Nodejs异步流程框架async的方法
2019/06/07 NodeJs
vue调用语音播放的方法
2019/09/27 Javascript
python对数组进行反转的方法
2015/05/20 Python
Python脚本实现自动发带图的微博
2016/04/27 Python
Python 使用SMTP发送邮件的代码小结
2016/09/21 Python
基于python中staticmethod和classmethod的区别(详解)
2017/10/24 Python
Python多进程库multiprocessing中进程池Pool类的使用详解
2017/11/24 Python
Python编程pygal绘图实例之XY线
2017/12/09 Python
python实现时间o(1)的最小栈的实例代码
2018/07/23 Python
python项目对接钉钉SDK的实现
2019/07/15 Python
解决安装python3.7.4报错Can''t connect to HTTPS URL because the SSL module is not available
2019/07/31 Python
在html5的Canvas上绘制椭圆的几种方法总结
2013/01/07 HTML / CSS
浅谈html5与APP混合开发遇到的问题总结
2018/03/20 HTML / CSS
社区党总支书记先进事迹材料
2014/01/24 职场文书
人事主管岗位职责
2014/01/30 职场文书
高三高考决心书
2014/03/11 职场文书
工作所在部门证明
2014/09/21 职场文书
人事局接收函
2015/01/31 职场文书
幼儿园小班教师个人工作总结
2015/02/06 职场文书
酒店圣诞节活动总结
2015/05/06 职场文书