python学习笔记4~缓存机制

本文通过实验演示Python中不同数据类型的缓存机制,包括小整数、字符串、大整数和浮点数的缓存行为,揭示Python内部如何优化内存管理和提高效率。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

定义两个变量,为它们赋予相同的值,并将这两个变量的指针打印出来,然后分别按照缓存的具体规则分别为它们赋值,观察赋值后的两个变量的指针是否相等。如果相等,则表明在Python内部对其使用了缓存机制。

例如:
#在范围[-5, 256]之间的小整数
int1=-5
int2=-5
print("[-5, 256]情况下的两个变量指针",id(int1),id(int2))

#对于字符串
s1="3344"
s2= "3344"
print("字符串情况下的两个变量指针",id(s1),id(s2))

#大于256的整数
int3=257
int4=257
print("大于256的整数情况下的两个变量指针",id(int3),id(int4))

#大于0的浮点数
f1=256.4
f2=256.4
print("大于0的浮点数情况下的两个变量指针",id(f1),id(f2))

#小于0的浮点数
f1=-2.45
f2=-2.45
print("小于0的浮点数情况下的两个变量指针",id(f1),id(f2))

#小于-5的整数
n1=-6
n2=-6
print("小于-5的整数情况下的两个变量指针",id(n1),id(n2))

def fun():
    #[-5,256]
    int1=-5
    print("fun中-5的指针",id(int1),id(int2))
    
    #字符串类型
    s1="3344"
    print("fun中3344字符串的指针",id(s1),id(s2))
    
    #>256
    int3=257
    print("fun中257的指针",id(int3),id(int4))
    
    #浮点类型
    f1=256.4
    print("fun中256.4的指针",id(f1),id(f2))  
    
    #<-5
    n1=-6
    print("fun中-6的指针",id(n1),id(n2))
    
fun()

输出结果:
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值