サマリー:本文實例為大家分享了python策略模式代碼,供大家參考,具體內容如下""" 策略模式 """ import types class StrategyExample: def __init__(self, func=None): self.name&
本文實例為大家分享了python策略模式代碼,供大家參考,具體內容如下
""" 策略模式 """ import types class StrategyExample: def __init__(self, func=None): self.name = '策略例子0' if func is not None: """給實例綁定方法用的,不會影響到其他實例""" self.execute = types.MethodType(func, self) def execute(self): print(self.name) def execute_replacement1(self): print(self.name + ' 從執(zhí)行1') def execute_replacement2(self): print(self.name + ' 從執(zhí)行2') if __name__ == '__main__': strat0 = StrategyExample() strat1 = StrategyExample(execute_replacement1) strat1.name = '策略例子1' strat2 = StrategyExample(execute_replacement2) strat2.name = '策略例子2' strat0.execute() strat1.execute() strat2.execute()
運行結果如圖: