溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

python判斷是否為函數(shù)的案例

發(fā)布時間:2020-10-30 11:31:29 來源:億速云 閱讀:202 作者:小新 欄目:編程語言

小編給大家分享一下python判斷是否為函數(shù)的案例,希望大家閱讀完這篇文章后大所收獲,下面讓我們一起去探討吧!

在Python中,判斷一個對象是否是函數(shù)有如下三種方法。

根據(jù)“__call__”屬性判斷

有時候用python就有這么一種感悟,各種鉤子函數(shù)就是通過內(nèi)置的“__”屬性實現(xiàn),python學得好不好,就是對“__”屬性理解得透徹不透徹。

python函數(shù)在調(diào)用時,一定會首先調(diào)用其相關“__call__”函數(shù)(沒有空格)。

padd = lambda a, b: a + b
#   判斷成功
if(hasattr(add, '__call__')):
        print add(1,2)

利用callable判斷

這是一個據(jù)傳快要廢棄的方法,但是在Python 2中依舊很好用,如下:

#   判斷成功
if(callable(add)):
        print add(2, 2)

利用isfunction進行判斷

Python的inspect模塊包含了大量的與反射、元數(shù)據(jù)相關的工具函數(shù),isfunction就是其中一種,使用方法如下:

from inspect import isfunction
#   判斷成功
if(isfunction(add)):
    print add(5, 5)

看完了這篇文章,相信你對python判斷是否為函數(shù)的案例有了一定的了解,想了解更多相關知識,歡迎關注億速云行業(yè)資訊頻道,感謝各位的閱讀!

向AI問一下細節(jié)

免責聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權內(nèi)容。

AI