• 技术文章 >Python技术 >Python基础教程

    python中del在垃圾回收的使用

    小妮浅浅小妮浅浅2021-08-20 09:17:44原创2125

    使用说明

    1、del语句删除的是引用,而不是对象。但是,del可能会导致对象,作为垃圾回收。

    2、在CPython中,当对象引用数量为零时,对象会立即被销毁。

    如果除了循环引用,没有其他引用,两个对象都会被销毁。

    实例

    >>> import weakref
    >>> s1 = {1, 2, 3}
    # s2和s1引用同一个对象
    >>> s2 = s1
    >>> def bye():
    ...     print("Gone")
    ...     
    # 监控对象和调用回调
    >>> ender = weakref.finalize(s1, bye)
    >>> ender.alive
    True
    # 删除s1后还存在s2引用
    >>> del s1
    >>> ender.alive
    True
    # s2重新绑定导致{1, 2, 3}引用归零
    >>> s2 = "spam"
    Gone
    # 对象被销毁了
    >>> ender.alive
    False

    以上就是python中del在垃圾回收的使用,希望对大家有所帮助。更多Python学习指路:python基础教程

    本文教程操作环境:windows7系统、Python 3.9.1,DELL G3电脑。

    专题推荐:python del 垃圾回收
    品易云
    上一篇:python设置的窗口位置 下一篇:python线程中Condition的原理

    相关文章推荐

    • python三种流程控制的语句• python析构函数的常见应用• python析构函数的底层机制• python析构函数的使用注意• python中类对象的介绍• python类属性的概念• python类属性的内存分析• python类方法的使用注意• python静态方法的使用注意点• python访问元组的两种方法• python多线程的执行分析• python字符串结合操作符的使用• python中mainloop()方法的使用• python设置的窗口位置

    全部评论我要评论

    © 2021 Python学习网 苏ICP备2021003149号-1

  • 取消发布评论
  • 

    Python学习网