导语:
本文主要介绍了关于python标记删除如何实现?的相关知识,希望可以帮到处于编程学习途中的小伙伴
说明
1.主要解决循环引用数据的问题。因为引用大于0,所以不会被回收。
2、标记删除是为了解决循环引用无法删除的问题。
3、delete操作后每次引用-1,此时num和num1的引用都为0,放入死容器,如果引用大于0,则放入活容器。
遍历幸存容器,检查是否有一些幸存容器引用了死容器的对象,如果是,则将其从死容器中取出,放入幸存容器中。
死亡容器中的所有物体都被删除了。
实例
num = ["hello", "world"]
num1 = ["hi", "are", "you"]
print(sys.getrefcount(num))
print(sys.getrefcount(num1))
num.append(num1)
num1.append(num)
print(sys.getrefcount(num))
print(sys.getrefcount(num1))
del num
del num1
本文教程操作环境:windows7系统、Python 3.9.1,DELL G3电脑。
本文为原创文章,版权归知行编程网所有,欢迎分享本文,转载请保留出处!
你可能也喜欢
- ♥ 如何在python中快速缩进10/10
- ♥ 如何在python中组合两个列表08/23
- ♥ 如何下载和安装python模块09/09
- ♥ python3列表列表求和教程11/10
- ♥ 带有空格或制表符的 Python 缩进09/12
- ♥ 如何在python中分解素数?08/19
内容反馈