python中的内存管理

内存管理

引用计数

引用计数是针对变量值的

name = 'xiaoming' # 引用计数为1,这个变量值被引用多少

name1 = name # 'xiaoming'的引用计数为2

name2 = 'xiaoming1'

del name

# 'xiaoming'的引用计数为1

del name1 # xiaoming的引用计数为0

垃圾回收机制

当变量值的引用计数为0的时候,python会自动回收该变量值的内存占用

name = 'xiaoming'

# xiaoming的引用计数为1

print(id(name))

1683062220784


del name

# xiaoming的引用计数为0

print(id(name))

NameError: name 'name' is not defined

小整数池

[-5,256]之间的整数由于经常用到,所以在python启动的那一刻,就会开辟一块内存空间放入这些整数,他不会被垃圾回收机制回收

x = 10

y = 10

print(x)

print(y)

# x=10的变量值10的引用计数为2

10

10

posted @ 2019-05-21 13:36  小小罗code  阅读(158)  评论(0编辑  收藏  举报