Vistor 模式:
Vistor 模式常常用于将访问数据,支持传入不同的数据访问器(或是处理器),上例子
def visit(directory, visitor):
for root, dirs, files in os.walk(directory):
for f in files:
ext = os.path.splitext(f)[-1][1:]
if hasattr(visitor,ext):
a = getattr(visitor,ext)
a(f)
class FileReader(object):
"""
File Reader
"""
def bmp(self,f):
print "is bmc",f
visit("d:\\eastmoney\\",FileReader())
is bmc btclose.bmp
is bmc btclose2.bmp
is bmc btclosedown.bmp
is bmc btmax.bmp
Observer 模式:
Observer 模式常常用于侦听对象发生的变化,上例子
class Event(object):
_observers = []
def __init__(self, subject):
self.subject = subject
@classmethod
def register(cls, observer):
if observer not in cls._observers:
cls._observers.append(observer)
@classmethod
def unregister(cls, observer):
if observer in cls._observers:
self._observers.remove(observer)
@classmethod
def notify(cls, subject):
event = cls(subject)
for observer in cls._observers:
observer(event)
class WriteEvent(Event):
def __repr__(self):
return 'WriteEvent'
def log(event):
print '%s was written' % event.subject
WriteEvent.register(log)
WriteEvent.notify('a given file')
分享到:
相关推荐
本文实例讲述了Python设计模式之状态模式原理与用法。分享给大家供大家参考,具体如下: 状态模式(State Pattern):当一个对象的内在状态改变时允许改变其行为,这个对象看起来像是改变了其类 下面是一个状态模式的...
python-patterns-收集了 Python 常用的设计模式 python-patterns Python 中的设计模式和习惯用法的集合。 当前模式创建模式:模式描述abstract_factory使用具有特定工厂的通用函数borg一个在实例之间共享状态的单例...
15.S8设计模式-4 行为型模式 16.5 设计模式总结 17.6 二叉树 18.7 算法进阶 2.s8算法1-2 汉诺塔+列表查找 3.s8算法1-3 排序lowb三人组 4.s8算法1-4 快排 5.s8算法1-5 堆排序 6.s8算法1-6 归并排序+希尔排序 7.s8算法...
《python编程实战:运用设计模式、并发和程序库创建高质量程序》由python开发者社区知名技术专家mark summerfield亲笔撰写,全球资深python专家doug hellmann作序鼎力推荐,是python领域最有影响力的著作之一。...
用于Python设计模式示例的UML图该项目列出了“ Python中的设计模式示例”的UML图。 单击图上的“ Python设计模式示例的UML图”时,该项目列出了“ Python设计模式示例”的UML图。 当您单击下面的图图像时,该图将在...
本文实例讲述了Python设计模式之中介模式。分享给大家供大家参考,具体如下: Mediator Pattern:中介模式 中介模式提供了一系列统一的系统接口。此模式也被认为是行为模式,因为他能选择程序处理流程。 当许多类...
Python设计模式示例的UML图 该项目列出了“ ”的UML图。 当您单击图图像时,该图将在“图映射”中打开。 如果您想了解Diagram Map,请参阅。 行为模式 责任链 命令 口译员 迭代器 调解员 纪念 Python代码执行结果 ...
基于Python的行为型模式设计
在Python 3.8中使用面向对象的设计模式构建健壮且可维护的软件 这本书是关于什么的? 面向对象编程(OOP)是一种流行的设计范例,其中数据和行为以可以一起操作的方式封装。 Python 3面向对象程序设计的第三版全面...
基于Python的行为型模式设计.pdf
Python中的设计模式该存储库重点介绍了以Python实现的23个著名的GoF(四人制)设计模式。 它是对我的《 Python中的设计模式》一书的补充。 本书中的所有代码示例都可以在这些页面中找到。 设计模式是可以重复应用于...
设计模式——状态模式状态模式(State Pattern):当一个对象的内在状态改变时允许改变其行为,这个对象看起来像是改变了其类应用场景:当控制一个对象的状态转换的条件表达式过于复杂时,把状态的判断逻辑转移到表示不同...
《python编程实战:运用设计模式、并发和程序库创建高质量程序》由python开发者社区知名技术专家mark summerfield亲笔撰写,全球资深python专家doug hellmann作序鼎力推荐,是python领域最有影响力的著作之一。...
共8章:第1~3章分别介绍了python的几种设计模式(创建型设计模式、结构型设计模式和行为型设计模式);第4章和第5章详细讲解了python的高级并发技术以及cython的用法;第6章具体介绍了python的高级网络编程;第7章...
设计模式——模板方法模式模板方法模式(Template Method Pattern):定义一个操作中的算法骨架,将一些步骤延迟至子类中.模板方法使得子类可以不改变一个算法的结构即可重定义该算法的某些特定步骤使用场景:当不变和可...
使用结构设计模式,找出对象和类如何交互以构建更大的应用程序使用Python设计模式提高应用程序的生产力和代码库使用代理模式保护接口###其他信息模块1:第1章和第2章没有代码文件模块2:第11章中没有代码文件###...
主要介绍了Python使用设计模式中的责任链模式与迭代器模式的示例,责任链模式与迭代器模式都可以被看作为行为型的设计模式,需要的朋友可以参考下
三、行为型模式 1、模板方法模式【Template Method】 2、观察者模式【Observer】 3、状态模式【State】 4、策略模式【Strategy】 5、职责链模式【Chain of Responsibility】 6、命令模式【Command】 7、访问者模式...
这门非常独特的课程将不仅教授Python内存管理的工作原理以及如何创建在该世界范围内运行良好的代码,还将提供许多具体的技术,工具,设计模式等,以使您的程序更有效地利用内存并更快地进行计算。开机。 如果Python...
基于python技术的B站用户行为分析系统设计与实现 python;django;mysql; 本次是通过利用Python技术来进行一款系统数据分析的系统,以B站数据为数据源,通过大数据分析来对B站中的UP主账号进行数据可视化的方式。...