熱線電話:13121318867

登錄
首頁精彩閱讀Python callable()函數用法實例分析
Python callable()函數用法實例分析
2018-05-07
收藏

Python callable()函數用法實例分析

本文實例講述了Python callable()函數用法。分享給大家供大家參考,具體如下:
python中的內建函數callable( ) ,可以檢查一個對象是否是可調用的 。
對于函數, 方法, lambda 函數式, 類, 以及實現了 _ _call_ _ 方法的類實例, 它都返回 True.    
>>> help(callable)
Help on built-in function callable in module __builtin__:
callable(...)
 callable(object) -> bool
 Return whether the object is callable (i.e., some kind of function).
 Note that classes are callable, as are instances with a __call__() method.

1》函數是可調用的    
>>> def add(x,y):
...  return x+y
...
>>> callable(add)
True

2》類和類內的方法是可調用的    
>>> class C:
...  def printf(self):
...   print 'This is class C!'
...
>>> objC=C()
>>> callable(C)#類是可調用的,調用它們, 就產生對應的類實例.
True
>>> callable(C.printf)
True
>>> callable(objC.printf)
True

3》實現了__call__()方法的類實例是可調用的    
>>> class A:
...  def printf(self):
...   print 'This is class A!'
...
>>> objA=A()
>>> callable(A) #類是可調用的,調用它們, 就產生對應的類實例.
True
>>> callable(objA) #類A沒有實現__call__()方法,因此,類A的實例是不可調用的
False
>>> class B:
...  def __call__(self):
...   print 'This is class B!'
...
>>> objB=B()
>>> callable(B) #類是可調用的,調用它們, 就產生對應的類實例.
True
>>> callable(objB) #類B實現了__call__()方法,因此,類B實例是可調用的
True

4》lambda表達式是可調用的    
>>> f=lambda x,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

數據分析咨詢請掃描二維碼

若不方便掃碼,搜微信號:CDAshujufenxi

數據分析師資訊
更多

OK
客服在線
立即咨詢
日韩人妻系列无码专区视频,先锋高清无码,无码免费视欧非,国精产品一区一区三区无码
客服在線
立即咨詢