最新公告
  • 年底活动:凡在本站购买过源码超过99元的老用户,可免费领取1张99元优惠券,用于抵扣开通会员!升级SVIP
  • python里类自动调用方法有哪些?

    python里类自动调用方法有哪些?

    特殊方法(特殊成员):这类方法名字特殊,有特殊用途,会自动调用。因为特殊又会自动调用,大家也叫做魔术方法(魔法方法)。特殊方法组成:固定命名-开头结尾都是双下划线。下面针对几种常见的自动调用方式以及特殊方法,来给大家讲解一下如何使用这些方式,好啦,下面开始正题吧。

    1、__init__():

    一般用来初始化类的参数,大家习惯叫做【构造方法】

    使用情况:最多使用,一般的类都会使用

    代码如下:

    class Person:
    
    def __init__(self, name, age):
    
    print('执行__init__方法')
    
    p1 = Person('jack', 18)
    
    2、__call__():
    

    告诉你类对象也可以当作函数来调用,一般叫【函数式调用】。

    使用情况:使用较少,装饰器用的多。

    class Person:
    
    def __init__(self):
    
    print('执行__init__方法')
    
    def __call__(self, *args, **kwargs):
    
    print('执行__call__方法')
    
    p1 = Person()
    
    3、__get__():
    

    类中实现这个方法叫做描述器(__set__、__delete__)

    使用情况:使用较少,装饰器用的多

    class A:
    
    def __init__(self):
    
    print('执行__init__方法')
    
    def __get__(self, instance, owner):
    
    print('执行__get__方法')
    
    class B:
    
    a = A()
    
    b = B()
    

    还有很多很多,是不需要我们自己去写的,我们只知道,这类特殊方法是通过某种方式自动调用执行的就行了。当然,如果你自己写的某个类中,希望以这样的方式运行,那你就自己去写对应都特殊函数就可以了。

    找互联网优质资源,上知事网!
    知事网 » python里类自动调用方法有哪些?

    发表评论

    • 2720会员总数(位)
    • 2342资源总数(个)
    • 206本周发布(个)
    • 20 今日发布(个)
    • 3556稳定运行(天)

    提供最优质的资源集合

    Mac软件 Dedecms源码
    升级SVIP尊享更多特权立即升级