解密python的id()函数
来源:互联网 发布:usb6009数据采集卡 编辑:程序博客网 时间:2024/06/04 15:44
>>> 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值相同,而很长的则不会;
在查阅了:
http://stackoverflow.com/questions/4293408/ids-of-immutable-types
http://stackoverflow.com/questions/3402679/identifying-objects-why-does-the-returned-value-from-id-change
之后,可以得到一个简单的结论就是:解释器在对值很小的int和很短的字符串的时候做了一点小优化,只分配了一个对象,让它们id一样了。
- 解密python的id()函数
- 解密python的id()函数
- python的id()函数
- python的id函数
- 解密Python函数的参数
- python的id()函数介绍
- python id函数的使用
- PHP,Python互通的加密解密函数
- Python id() 函数
- 封装好的加密解密函数(URL加密解密、sha1加密解密、des加密解密)
- python中base64模块的加解密函数
- python中base64模块的加解密函数
- python的ID方法
- Python中的id函数到底是什么?
- Python标准库:内置函数id(object)
- python中的id() 函数深度解剖
- Python中的id函数到底是什么?
- oracle 的加密解密函数
- DataTble导出Excel(不借用控件)
- qt 数据库连接相关问题
- 在wince中使用C++语言创建Silverlight的VisualState
- 选型HBase初探
- Iphone文件读写操作
- 解密python的id()函数
- Android中滑屏实现----手把手教你如何实现触摸滑屏以及Scroller类详解
- 概率
- 数据中心:选择外包服务的八大技巧
- C#学习之接口
- Ant build.xml的创建(三)
- reviewboard的LDAP认证的配置
- js二级联动的实现
- spring常用的标签@Repository,@controller,@service