国产成人AV无码一二三区,少女1到100集,国产精品久久久久精品综合紧,巜公妇之诱感肉欲HD在线播放

文章 > Python常见问题 > python的内存是如何管理的?

python的内存是如何管理的?

头像

silencement

2019-09-23 10:16:303652浏览 · 0收藏 · 0评论

初学python的小伙伴一定会有这样的困惑,python中是如何进行内存管理的?如何进行垃圾清理的?本篇文章说一下这个问题,希望对学习python的小伙伴有帮助。

首先就不得不提到Python解释器在何种情况下会释放变量的内存。Python引用了内存计数这一简单的计数来控制。

下面是引用计数的知识:

1) 增加引用计数 当对象被创建并(将其引用)赋值给变量时,该对象的引用计数被设置为1。

对象的引用计数增加的情况:

对象被创建:x = 3.14

另外的别名被创建:y = x

被作为参数传递给函数(新的本地引用):foobar(x)

成为容器对象的一个元素:myList = [123, x, 'xyz']

2) 减少引用计数 对象的引用计数减少的情况:

一个本地引用离开了其作用范围。如foobar()函数结束时

对象的别名被显式销毁:del y

对象的一个别名被赋值给其他对象:x = 123

对象被从一个窗口对象中移除:myList.remove(x)

窗口对象本身被销毁:del myList

(更多学习内容,请点击python学习网

3) del语句 Del语句会删除对象的一个引用,它的语法如下:del obj[, obj2[, ...objN]]

例如,在上例中执行del y会产生两个结果:

从现在的名称空间中删除y

x的引用计数减1

下面我们来试验一下

import sys
 
x = 3.14
print("原始引用值:", sys.getrefcount(x))
y = x
print("被y引用后:", sys.getrefcount(x))
 
x = 4.0
print("重新赋值后:", sys.getrefcount(x))
 
del y
print("删除y引用后:", sys.getrefcount(x))
原始引用值: 3
被y引用后: 4
重新赋值后: 3
删除y引用后: 3

当一个变量的引用计数为0的时候,就会被解释器回收。当然在交互模式下,内存不会马上释放,重新启动解释器就会释放了。

关注

关注公众号,随时随地在线学习

本教程部分素材来源于网络,版权问题联系站长!

麻花星空传剧原创MV在线| 拔小萝卜免费观看全集电视剧 | 夫妻二人世界免费看第一集| 《年轻朋友的妻子3》| 来吧儿子妈妈是纯还是混| 学长突然把自慰器开到最大| 当着老公的面被维修工欺负| 《欧美性按摩》电影| 欧美大片视频| 摸摸大扔子图片真实| B站暴躁姐的丈夫是干什么的| 女朋友太骚了每次进去都觉得很| 黑丝美女| 日韩电影在线观看高清版电视剧 | 《漾出OVER FLOWER》..| 无人区在线观看免费播放电视剧| 灭火宝贝2:决战丛林| 法国《监狱伦理3》| 美女和男生一起努力生产豆浆| 欧美黑粗大硬巴XXOO| 精产一二三产区划分标准图片| 美女和男生一起努力的生孩子视频.. | 女人大阴屑夹缝是阴虚还是阳虚| 一晚上要了小姑娘三次| 女性扒开大腿内侧小肚子痒| 男生把困困放在女生定眼| 张慧的奶头被老局长吃奶的视频 | 外国网站| 小洞流口水了 是不是饿了 | 密爱在线观看| 公交车上荫蒂添的好舒服H漫画| 男人把困困进女生困困视频 | 《被按摩的人妻4》| 校服| 三男一女吃奶添下面| 一晚上要了小姑娘三次| 小B又骚又紧日不死你视频免费| 开处出血视频| 口咬的10个绝招图片| 《疯狂瑜伽》完整版| 免费的行情网站WWW下载大全