内存管理

内存管理

一、变量:接受变量值,描述世间万物变化的状态

```python

name = 'nick'

print(name)

height =180

```

​ nick

变量:变量名、变量值、赋值号

变量值:a=10 print(a)

变量的地址:print(id(a))

看python是如何在内存中创建变量的

二、引用计数

* 引用计数是针对变量值的

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

name2 = name  # 'nick'的引用计数为2

name1 = 'nick1'

del name

\# 'nick'的引用计数为1

del name2 # nick的引用计数为0
a=10  #引用计数1
b=a   #引用计数2
del a   #引用计数1
c=10    #引用计数2
#引用10 的计数为2

三、垃圾回收机制

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

name  ='nick'

print(name)


==》nick

print('nick')

==》nick

相当于(主动进行了垃圾回收)

name  ='nick'

print(name)

del name

四、 小整数池

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

x = 10

y = 10

print(x+10)

print(y+10)

 x=10的10的引用计数为多少,其实为2   ==> 20 20
posted @ 2019-05-20 19:08  emos  阅读(131)  评论(0编辑  收藏  举报