轻松掌握python设计模式之策略模式
巴扎黑2017-01-12 14:07:22321本文实例为大家分享了python策略模式代码,供大家参考,具体内容如下
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 | 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 + ' 从执行1' )
def execute_replacement2( self ):
print ( self .name + ' 从执行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()
|
运行结果如图:
