列表的Python内存管理()

栏目: Python · 发布时间: 7年前

内容简介:翻译自:https://stackoverflow.com/questions/5731878/python-memory-management-for-list

我正在创建一个元组,然后将其转换为包含以下代码的列表:

y=("hello","the","world")
y=list(y)

python是否只是将对象标记为现在可变并可通过标签y访问,或者它是否创建了每个对象的完整副本,将它们添加到新的列表结构中,然后删除原始的不可变对象?

干杯

在执行该行期间

y = list(y)

发生以下情况:

>评估右侧.这包括创建新的列表对象.列表对象用传递给构造函数的元组对象的项填充.这些项目不会被复制.而是增加了它们的引用计数,并且对这些项的引用被添加到新的列表对象中.

>新创建的列表对象分配给左侧的名称(y).这包括首先取消分配名称,这导致减少之前指向的元组对象的引用计数器.由于没有对此元组对象的更多引用,因此将其删除.最后,y设置为指向新的列表对象.

翻译自:https://stackoverflow.com/questions/5731878/python-memory-management-for-list


以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

动画的时间掌握

动画的时间掌握

哈罗德•威特克、约翰•哈拉斯 / 中国电影出版社 / 2012-7-1 / 38.00元

动画的时间掌握(修订版),ISBN:9787106035334,作者:(英)哈罗德·威特克 等著一起来看看 《动画的时间掌握》 这本书的介绍吧!

图片转BASE64编码
图片转BASE64编码

在线图片转Base64编码工具

MD5 加密
MD5 加密

MD5 加密工具

XML 在线格式化
XML 在线格式化

在线 XML 格式化压缩工具