在 Python 中提供了__call__ 方法,容許建立可調用的對象(實例)。若是類中實現了 __call__ 方法,則能夠像使用函數同樣使用類。函數
例如簡單的封裝一個接口 get/post 方法:post
1 import requests 2 3 class Run(): 4 def __init__(self): 5 pass 6 7 # __call__ 方法使用 8 def __call__(self, url, method='post', data = None): 9 if method == "get": 10 res = requests.get(url,data) 11 else: 12 res = requests.post(url,data) 13 return res 14 15 16 17 if __name__ == "__main__": 18 url = "https://translate.google.com/" 19 20 r = Run() 21 # 使用而且打印結果 22 print(r(url, 'get')) 23 24 25 # 打印結果: <Response [200]>