Python内置函数callable()

2017-09-15  本文已影响0人  简书冷雨

callable(object)

该方法用来判断一个对象 object 是否可以被调用。

如果参数 object 是可被调用的,函数 callable() 返回 True,否则返回 False。不过,即使函数 callable() 返回 True,在实际调用中仍有可能会出现失败的情况,但如果返回的是 False,实际调用中肯定会失败。

说明:

类对象都是可被调用对象(返回类的一个实例,如 ClassA());类的实例对象是否可调用对象,则取决于该类是否定义了 __call__() 方法。

示例

>>> class ClassA:
...     pass
...
>>> callable(ClassA)
True
>>> a=ClassA()
>>> callable(a)
False
>>> a()
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
TypeError: 'ClassA' object is not callable

>>> class ClassB:
...     def __call__(self):
...             print('instances are callable')
...
>>> callable(ClassB)
True
>>> b=ClassB()
>>> callable(b)
True
>>> b()
instances are callable
上一篇下一篇

猜你喜欢

热点阅读