__call__   方法的作用和用法

    SEO基础 wuya 226次浏览 已收录 0个评论

    对象当作函数被调用:

    __call__   方法

    class Person:

    # 将对象当做函数调用时会自动触发

    def __call__(self, *args, **kwargs):

    print(‘__call__’)

    print(args)

    print(kwargs)

     

    p = Person()

    把对象当成函数的时候自动触发。

     

    # 判断是否可调用

    # print(callable(p))

     

    # 判断是否有call属性

    print(hasattr(p, ‘__call__’))

     

    # 判断是否是函数

    from inspect import isfunction

    print(isfunction(p))

     

    抽象基类:

    from abc import ABC, abstractmethod

     

    class Animal(ABC):

    # 定义抽象方法:子类中必须实现,所有可以统一接口

     @abstractmethod

    def run(self):

    凡是在父类上定义了@abstracmethod的方法,子类和必须使用,否则无法创建对象。


    学海无涯 , 版权所有丨如未注明 , 均为原创丨转载请注明__call__   方法的作用和用法
    喜欢 (0)
    发表我的评论
    取消评论
    表情 加粗 删除线 居中 斜体 签到

    Hi,您需要填写昵称和邮箱!

    • 昵称 (必填)
    • 邮箱 (必填)
    • 网址