python callable的理解
問題描述
class _IMP(object): def __init__(self, host=’127.0.0.1’, nport=8080, sport=8102):’’’ 8080 for nosecurity, 8443 for security, 8102 for nosecurity, 8103 for security’’’self.host = host # host address 127.0.0.1|10.6.18.3self.nport = nport # north port 8080|8443self.sport = sport # south port 8102|8103 def update(self, **kwargs):for k, v in kwargs.iteritems(): if hasattr(self, k):setattr(self, k, v) def as_dict(self):return {k: getattr(self, k) for k in dir(self) if not k.startswith(’_’) and not callable(getattr(self, k))}
a = _IMP()In [10]: a.as_dict()Out[10]: {’host’: ’127.0.0.2’, ’nport’: 8080, ’sport’: 8102}
as_dict 這里的 callable 是什么意思?
問題解答
回答1:callable用于檢查對象是否可調用,更簡單一點來說就是判斷是不是方法
回答2:callable就是'可以被call的對象',可以被調用的對象.包括函數,類,含有__call__方法的對象等.你可以在python repl中敲help(callable)看看,或者查python文檔,一般基本的問題和概念,都能解答了.
回答3:callable(Object)對象Object是否可被調用
相關文章:
1. javascript - 微信h5發送圖文信息,部分設備點擊“發送”按鈕時沒反應,問題較難重現,如何能找到可能存在問題的點?2. objective-c - 做一個百度地圖定位的demo,結果出錯好多。3. 微信小程序session無法緩存的問題4. 如何使用Java1.8編譯1.6JVM可運行的class文件5. javascript - 關于微信授權的問題。6. java - 輸出4個不相等整數之間所有任意三個整數的乘積7. css - 如何使用 vue transition 實現 ios 按鈕一樣的平滑切換效果8. angular.js - 公眾號H5頁面 angularjs 怎么動態修改title值(微信6.5.5,動態修改不行 6.5.7闊以)9. node.js - 如何在服務器部署vuejs項目?10. vue 子組件watch監聽不到prop的解決
