在 python 中提供了__call__ 方法,允許建立可呼叫的物件(例項)。如果類中實現了 __call__ 方法,則可以像使用函式一樣使用類。
#!/usr/bin/env python
# -*- coding: utf-8 -*-
class run(object):
def __init__(self):
pass
def __call__(self, data):
print('data=%s' % data)
return data
if __name__ == "__main__":
r = run()
print(r("python探路者"))
輸出:
data=python探路者
python探路者
python 特殊方法之 call
call 在python中,函式其實是乙個物件 f abs f.name abs f 123 123由於 f 可以被呼叫,所以,f 被稱為可呼叫物件。所有的函式都是可呼叫物件。乙個類例項也可以變成乙個可呼叫物件,只需要實現乙個特殊方法 call 我們把 person 類變成乙個可呼叫物件 class...
簡談python中的 call
最近在思考 call 和類方法的使用場景,雖然功能會有重疊,但凡存在的必是合理的,肯定會有輕微的不同,看了django以及部分框架的設計原始碼,各有各的設計風格,本著功能邊界的看法,所以做個總結。classa def init self,a,b self.a a self.b b defdo sta...
JS中的call 和apply 方法
1 方法定義 call方法 2 常用例項 a function add a,b function sub a,b add.call sub,3,1 這個例子中的意思就是用 add 來替換 sub,add.call sub,3,1 add 3,1 所以執行結果為 alert 4 注意 js 中的函式其...