__call__   方法的作用和用法

对象当作函数被调用:

__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的方法,子类和必须使用,否则无法创建对象。

分类: Python编程

发表评论 X

电子邮件地址不会被公开。 必填项已用*标注

姓名不能为空
填写正确的email