1.callable()
功能说明:检查对象(object)是否可调用。如果返回True,object仍然可能调用失败;但如果返回False,调用对象ojbect绝对不会成功
语法结构:
callable(object)
说明:
(1)object为对象。能调用返回True,不能调用则返回False
(2)类是可以被调用的,实例是不可以被调用的,除非类中声明了__call__方法
例16:检测对象的可调用性。
callable(0)
False
callable("mystring")
False
defadd(a,b):
returna+b
callable(add)
True
classA:
defmethod(self):
return0
callable(A)
True
a=A()
callable(a)
False
classB:
def__call__(self):
return0
callable(B)
True
b=B()
callable(b)
True
2.classmethod()
功能说明:是一个装饰器函数,用来指定一个类的方法为类方法,没有此函数指定的类的方法则称为实例方法
语法结构:
classmethod()
说明:
(1)第一个参数是类对象参数,在方法被调用的时候自动将类对象传入,参数名称约定为cls
(2)如果一个方法被标示为类方法,则该方法可被类对象调用(如C.f()),也可以被类的实例对象调用(如C().f())
例17:指定一个类的方法为类方法。
执行结果:
这是一个计算器
3.