Python中七種可調用對象的總結

Python中七種可調用對象的總結

除了用戶自定義的函數,調用操作符()也可以被用在其它對象上。Python中有7種形式的可調用對象:

用戶自定義函數

由def語句或者lambda表達式創建。

內置函數

由C(CPython)實現,如len,time.strftime。

內置方法

由C實現的方法,如dict.get。

方法(Method)

定義在類中的函數。

一個類通過__new__方法來創建一個實例,並通過__init__方法初始化之,並最終把實例返回給調用者。由於Python中沒有new操作符,所以通過對一個類進行調用來創建這個類的實例。當然,你也可以重載__new__方法來做一些別的事情。

類實例

如果一個類的中定義了__call__方法,那麼這個類的實例就可以像函數一樣被調用。

Generator函數

使用了yield關鍵字的函數或者方法,在被調用時,返回一個generator對象。


為了判斷一個對象是否是可調用的,可以使用callable()內置函數:

Python中七種可調用對象的總結

更多精彩文章,請關注CodeTalk


分享到:


相關文章: