7種可調用對象的方法
阿新 • • 發佈:2018-05-25
python
### 函數後的()其實是調用運算符,任何可以添加()的為可調用對象
# 1.用戶定義的函數:使用def語句或lambda表達式創建
# 2.內置函數:如len
# 3.內置方法:如dic.get,底層有c語言實現
# 4.方法:在類定義體中的函數
# 5.類: 運行時候通過__new__創建新對象,然後__init__完成初始化,本質還是在調用函數
# 6. 類的實例:如果類定義了__call__,那麽它的實例可以作為函數調用,表現像個函數
# 7. 生成器函數:使用yield關鍵字的函數或方法,返回生成器對象
def test():
print(‘this is a test‘)
test() # 函數的調用符號:()
this is a test
type(test)
function
print(type(test))
<class ‘function‘>
print(type(len))
<class ‘builtin_function_or_method‘>
print(type(set))
<class ‘type‘>
print(type(dict))
<class ‘type‘>
class Test: def do(self): print(‘this is test‘) def __call__(self): return self.do()
t = Test()
t.do()
this is test
7種可調用對象的方法