python缓冲池
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了python缓冲池,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含1209字,纯文字阅读大概需要2分钟。
内容图文
![python缓冲池](/upload/InfoBanner/zyjiaocheng/616/18748f4589e94ef6805c03c0282c8aff.jpg)
python
is 比较的是地址
== 比较的是内容
通常来说 dict list tuple str set int str …有很多都是对象 声明的时候内容可以一样但是 地址不会一样
所以判断的时候 is都为false 而==则为True
对象缓冲池
自己目前了解int str 有
str
python有个intern机制,简单说就是维护一个字典,这个字典维护已经创建字符串(key)和它的字符串对象的地址(value),每次创建字符串对象都会和这个字典比较,没有就创建,重复了就用指针进行引用就可以了。intern机制处理字符串长度小于等于20且仅由数字字母下划线构成的,只创建一次。
在源文件中 str is操作符返回值为True
在 input 时候会为 两个内容相同的字符串 is操作符返回 false
重点来了 但是在input时候如果字符串为 [a-z , A-Z , 0-9, _ ,] 中的一个这些内容中的一个的时候 is会为 true
int类型
>>> i = -5
>>> j = -5
>>> i is j # i和j是同一个对象
True
>>> i = 256
>>> j = 256
>>> i is j # i和j是同一个对象
True
>>> i = 257
>>> j = 257
>>> i is j # i和j是不同对象
False
由上面的实例可以看到,当变量在[-5,256]之间时,两个值相同的变量事实上会引用到同一个小整数对象上,也就是小整数对象池 中的对象,而不会去创建两个对象。而当变量超出了这个范围,两个值相同的变量也会各自创建整数对象,所以两者对应的对象不同
小整数对象池和字符缓冲池都是作用于运行过程中,python缓存小的整数和字符,当有变量使用这些对象时,不用额外创建对象。
内容总结
以上是互联网集市为您收集整理的python缓冲池全部内容,希望文章能够帮你解决python缓冲池所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。