Python代码块及缓存机制原理详解

yipeiwu_com6年前Python基础

这篇文章主要介绍了Python代码块及缓存机制原理详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下

1.相同的字符串在Python中地址相同

s1 = 'panda'
s2 = 'panda'
print(s1 == s2) #True
print(id(s1) == id (s2)) #True

2.代码块:

所有的代码都需要依赖代码块执行。

​ 一个模块,一个函数,一个类,一个文件等都是一个代码块

​ 交互式命令中, 一行就是一个代码块

3.缓存机制:

同一代码块下的缓存机制

​ 适用对象:int(float),bool,str

​ 具体细则:所有的数字,bool(1,0),几乎所有的字符串(字符串×数字时会有不同的情况)

​ 同一代码块内:初始化命令时 先检查内存中 的 字典有无 已创建的相同的数据,如果有相同数据, 则会共用同一内存地址,

​ 优点:节省内存,提升性能

​ 不同代码块下的缓存机制 (小数据池)

​ 适用对象:int(float),bool,str

​ 具体细则:-5~256 范围内的数字,以及满足规则的字符串

​ 优点:节省内存,提升性能

总结:

  • 同一个 代码块下一个缓存机制,不同的代码块下另一个缓存机制(小数据池)
  • 小数据池 数字范围 -5~256
  • 共同优点:节省内存,提升性能。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

python实现远程控制电脑

python远程控制电脑的具体代码,供大家参考,具体内容如下 python拥有大量的第三方库,且语法简单。今天老杨就用python实现远程控制电脑 所谓,谋定而后动,在实现任何一个需求之...

python实现列表的排序方法分享

python实现列表的排序方法分享

这次代码主要是实现列表的排序,使用sort函数实现,sort函数是对列表中的元素按照特定顺序进行排序,默认reverse,为false,从小到大排序, 如果指定reverse=...

Python写一个基于MD5的文件监听程序

Python写一个基于MD5的文件监听程序

前述 写了一个基于MD5算法的文件监听程序,通过不同的文件能够生成不同的哈希函数,来实现实现判断文件夹中的文件的增加、修改、删除和过滤含有特定字符的文件名的文件。 需求说明 需要实现对...

Python进阶之尾递归的用法实例

作者是一名沉迷于Python无法自拔的蛇友,为提高水平,把Python的重点和有趣的实例发在简书上。 尾递归 如果一个函数中所有递归形式的调用都出现在函数的末尾,我们称这个递归函数是尾...

对于Python中线程问题的简单讲解

我们将会看到一些在Python中使用线程的实例和如何避免线程之间的竞争。你应当将下边的例子运行多次,以便可以注意到线程是不可预测的和线程每次运行出的不同结果。声明:从这里开始忘掉你听到过...