英文文檔
callable(object)
Return True if the object argument appearscallable, False if not. If this returns true, it is still possible that a callfails, but if it is false, calling object will never succeed. Note that classesare callable (calling a class returns a new instance); instances are callableif their class has a __call__() method.
callable()
1、方法用來檢測對象是否可被調(diào)用,可被調(diào)用指的是對象能否使用()括號(hào)的方法調(diào)用。
>>> callable(callable)
True
>>> callable(1)
False
>>> 1()
Traceback (most recent call last):
? File "", line 1, in
? ? 1()
TypeError: 'int' object is not callable
?
2、可調(diào)用對象,在實(shí)際調(diào)用也可能調(diào)用失敗;但是不可調(diào)用對象,調(diào)用肯定不成功。
3、類對象都是可被調(diào)用對象,類的實(shí)例對象是否可調(diào)用對象,取決于類是否定義了__call__方法。
>>> class A: #定義類A
? ? ? ? ????pass
>>> callable(A) #類A是可調(diào)用對象
True
>>> a = A() #調(diào)用類A
>>> callable(a) #實(shí)例a不可調(diào)用
False
>>> a() #調(diào)用實(shí)例a失敗
Traceback (most recent call last):
? File "", line 1, in
? ? a()
TypeError: 'A' objectis not callable
>>> class B: #定義類B
? ? ? ? ????def __call__(self):
? ? ? ? ? ? ????print('instances are callable now.')? ? ? ?
>>> callable(B) #類B是可調(diào)用對象
True
>>> b = B() #調(diào)用類B
>>> callable(b) #實(shí)例b是可調(diào)用對象
True
>>> b() #調(diào)用實(shí)例b成功
instances are callable now.
小結(jié)
希望通過上面的操作能幫助大家。如果你有什么好的意見,建議,或者有不同的看法,希望你留言和我進(jìn)行交流、討論。
歡迎關(guān)注微信公眾號(hào),訪問更多精彩: 數(shù)據(jù)之魅 。
如需轉(zhuǎn)載,請聯(lián)系授權(quán),謝謝合作。
更多文章、技術(shù)交流、商務(wù)合作、聯(lián)系博主
微信掃碼或搜索:z360901061

微信掃一掃加我為好友
QQ號(hào)聯(lián)系: 360901061
您的支持是博主寫作最大的動(dòng)力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點(diǎn)擊下面給點(diǎn)支持吧,站長非常感激您!手機(jī)微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點(diǎn)擊微信右上角掃一掃功能,選擇支付二維碼完成支付。
【本文對您有幫助就好】元
