Python在類中實現swith case功能

徐曙輝發表於2019-03-19

Python中沒有switch的語法,但是很多時候需要多重條件判斷,又不想寫多個if,那隻能手動實現了。 實現程式碼

class RunMethod:
    def post(self,url=None,data=None,header=None):
        print(url)
    def get(self,url=None,data=None,header=None):
        print("get")

    def main(self,method):
        method = getattr(self, method)
        return method

if __name__ == '__main__':
    client = RunMethod()
    client.main("post")("http://www.baidu.com")
複製程式碼

其中主要用到getattr這個函式,用於返回一個物件屬性值。

getattr(object, name[, default])
複製程式碼
  • object -- 物件。
  • name -- 字串,物件屬性。
  • default -- 預設返回值,如果不提供該引數,在沒有對應屬性時,將觸發 AttributeError。

歡迎掃描下方二維碼,持續關注:

Python在類中實現swith case功能

網際網路工程師(id:phpstcn),我們一起學習,一起進步

相關文章