发布时间:2025-12-11 00:01:11 浏览次数:14
python中的内建函数callable( ) ,可以检查一个对象是否是可调用的 。
对于函数, 方法, lambda 函数式, 类, 以及实现了 _ _call_ _ 方法的类实例, 它都返回 True.
>>>help(callable)Helponbuilt-infunctioncallableinmodule__builtin__:callable(...)callable(object)->boolReturnwhethertheobjectiscallable(i.e.,somekindoffunction).Notethatclassesarecallable,asareinstanceswitha__call__()method.
1》函数是可调用的
>>>defadd(x,y):...returnx+y...>>>callable(add)True
2》类和类内的方法是可调用的
>>>classC:...defprintf(self):...print'ThisisclassC!'...>>>objC=C()>>>callable(C)#类是可调用的,调用它们,就产生对应的类实例.True>>>callable(C.printf)True>>>callable(objC.printf)True
3》实现了__call__()方法的类实例是可调用的
>>>classA:...defprintf(self):...print'ThisisclassA!'...>>>objA=A()>>>callable(A)#类是可调用的,调用它们,就产生对应的类实例.True>>>callable(objA)#类A没有实现__call__()方法,因此,类A的实例是不可调用的False>>>classB:...def__call__(self):...print'ThisisclassB!'...>>>objB=B()>>>callable(B)#类是可调用的,调用它们,就产生对应的类实例.True>>>callable(objB)#类B实现了__call__()方法,因此,类B实例是可调用的True
4》lambda表达式是可调用的
>>>f=lambdax,y:x+y>>>f(2,3)5>>>callable(f)True
其它的,像整数,字符串,列表,元组,字典等等,都是不可调用的,如下:
>>>callable(2)False>>>callable('python')False>>>l=[1,2,3]>>>callable(l)False>>>t=(4,5,6)>>>callable(t)False>>>d={'a':1,'b':2}>>>callable(d)False关于callable()函数怎么在Python中使用就分享到这里了,希望以上内容可以对大家有一定的帮助,可以学到更多知识。如果觉得文章不错,可以把它分享出去让更多的人看到。