Python基础知识(六)------小数据池,集合,深浅拷贝

时间:2021-01-11 19:59:49

Python基础知识(六)------小数据池,集合,深浅拷贝

一丶小数据池

什么是小数据池:

​ 小数据池就是python中一种提高效率的方式,固定数据类型使用同一个内存地址

代码块 :

​ 一个文件, 一个模块, 一个函数 ,一个类,一个终端的每一行就是代码块

​ 代码块的关系:如果在同一个代码块中,默认的整数和字符串还有布尔值都会进行缓存

#在python中是用字典的方式存储
a=1
b=1
print(globals()) #函数会以字典类型返回当前位置的全部全局变量。
驻留机制: int ,str ,bool,
#小数据池只针对: 整数, 字符串, 布尔值. 其他的数据类型不存在驻留机制

# int
范围-5~ 256
# 字符串的规则
1. 长度小于等于1 ,直接缓存
2. 长度大于1, 字符串中只出现,数字,字母,下划线就会缓存
3. 乘以 1,驻留机制同上 . 若乘的数字大于1,仅包含,数字,字母下划线,最终长度小于20就会缓存,超过20就不在缓存
4. 使用sys模块中的 intern() 函数 强制缓存字符串,不论多长都会被缓存
5. 在3.7的版本中,字符串最终驻留长度为4096 #bool
直接会被驻留
is和==和区别
#通过id()我们可以查看到⼀个变量表示的值在内存中的地址.
is 比较的是内存地址
== 是比较的值 总结:
#如果内存地址相同. 那么值一定是相等的.
#如果值相等. 则不一定是同⼀个对象

二丶集合

​​ set集合是python的一个基本数据类型.

​ 特点: 无序,可哈希 ,可变数据类型,可以理解为一个只存放key的字典

​​ 主要作用:去重,看最后一条