Python设计模式-策略模式

Posted 逆向行驶

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Python设计模式-策略模式相关的知识,希望对你有一定的参考价值。

# 策略模式和简单工厂模式相比,少了使用switch case 做判断,然后去实例化相应的
# 对象,比简单工厂模式更灵活。 它们代码的区别就在于此处使用了抽象类代替工厂类


# coding=utf-8
class DbManager:
def __init__(self):
pass

def operate_db(self):
pass


class DbInsert(DbManager):
def operate_db(self):
print ‘插入操作‘


class DbDel(DbManager):
def operate_db(self):
print ‘删除操作‘


class DbUpdate(DbManager):
def operate_db(self):
print ‘更新操作‘


class DbQuery(DbManager):
def operate_db(self):
print ‘查询操作‘


class UnDef(DbManager):
def operate_db(self):
print ‘未实现‘
return 0


class Strategy:
def __init__(self, strategy):
self.stra = strategy

def operate_db(self):
return self.stra.operate_db()


if __name__ == "__main__":
strategy = Strategy(DbDel())

print strategy.operate_db()

以上是关于Python设计模式-策略模式的主要内容,如果未能解决你的问题,请参考以下文章

python 设计模式之策略模式

Python设计模式-策略模式

python设计模式第九天策略模式

Python 设计模式 — 行为型模式 — 策略模式

设计模式(Python)-策略模式

python-策略模式