• 面向对象_del


    老师的博客http://www.cnblogs.com/Eva-J/articles/7351812.html#_label7

    内置的方法有很多
    不一定全都在object中  #python3中,所有类都是新式类,默认继承Object

    例如len(),因为bool于int都不能计算机其长度

    __del__

    class A:
        def __del__(self):   # 析构函数: 在删除一个对象之前进行一些收尾工作
            self.f.close()
    a = A()
    a.f = open()   # 打开文件 第一 在操作系统中打开了一个文件 拿到了文件操作符存在了内存中
    del a          # a.f 拿到了文件操作符消失在了内存中
    del a   # del 既执行了这个方法,又删除了变量

    这个代码不是很懂,有时间记得去看一下源码

    老师的博客这样写的:

    析构方法,当对象在内存中被释放时,自动触发执行。

    注:此方法一般无须定义,因为Python是一门高级语言,程序员在使用时无需关心内存的分配和释放,因为此工作都是交给Python解释器来执行,所以,析构函数的调用是由解释器在进行垃圾回收时自动触发执行的。

    __call__

    __call__方法的使用

      对象名()便调用了__call__方法,同时还有返回值,返回值好像什么都是可以的

    class calll:
        def __init__(self,name):
            self.name=name
        def __call__(self):
            print('执行了__call__方法')
            return 1
    #方法一
    alex=calll('alex')
    print(alex())
    #方法二
    print(calll('alex')())







  • 相关阅读:
    php apc缓存以及与redis的对比
    React Refs
    React 表单与事件
    React AJAX
    React 组件生命周期
    React 组件 API
    React Props
    React State(状态)
    react 组件之间传值
    react 创建组件
  • 原文地址:https://www.cnblogs.com/accolade/p/10516740.html
Copyright © 2020-2023  润新知