abstract:本文實(shí)例為大家分享了python策略模式代碼,供大家參考,具體內(nèi)容如下""" 策略模式 """ import types class StrategyExample: def __init__(self, func=None): self.name&
本文實(shí)例為大家分享了python策略模式代碼,供大家參考,具體內(nèi)容如下
""" 策略模式 """ import types class StrategyExample: def __init__(self, func=None): self.name = '策略例子0' if func is not None: """給實(shí)例綁定方法用的,不會(huì)影響到其他實(shí)例""" 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()
運(yùn)行結(jié)果如圖: