python中__call__方法

在 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]>
相關文章
相關標籤/搜索