5. callable函数
作用
callable() 函数用于动态检查一个对象是否可以被调用(即是否实现了 __call__
方法)。如果对象是可调用的(如函数、方法、类或实现了 __call__
的对象),则返回 True,否则返回 False。
调用格式
内置函数
对应的特殊方法
说明
callable(obj)
__call__()
检测一个是否能像函数一样通过括号() 调用。
示例
Dog 类内没有 __call__
方法时,Dog() 创建的对象不可以调用。
# callable函数 示例
class Dog:
pass
dog1 = Dog()
print(callable(len)) # True
print(callable(Dog)) # True
print(callable(dog1)) # False
if callable(dog1):
dog1()
dog1.__call__()
运行结果
True
True
False
Dog 类内有 __call__
方法时,Dog() 创建的对象可以调用。
# callable函数 示例
class Dog:
pass
def __call__(self, *args, **kwargs):
pass
dog1 = Dog()
print(callable(len)) # True
print(callable(Dog)) # True
print(callable(dog1)) # True
if callable(dog1):
dog1()
dog1.__call__()
运行结果
True
True
True