python设计模式大全
发布时间:2020-12-16 20:34:31 所属栏目:Python 来源:网络整理
导读:本篇章节讲解python常见的设计模式。供大家参考研究具体如下: # #!/usr/bin/env python# # -*- coding:utf-8## class HttpBase:# def get(self):# psss# class Http1(HttpBase):# def get(self):# print 'http1'# class Http2(HttpBase):# def ge
本篇章节讲解python常见的设计模式。分享给大家供大家参考,具体如下: # #!/usr/bin/env python # # -*- coding:utf-8 # # class HttpBase: # def get(self): # psss # class Http1(HttpBase): # def get(self): # print 'http1' # class Http2(HttpBase): # def get(self): # print 'http2' # # # class Base: # def __init__(self): # self.httpobj = None # def http(self): # self.httpobj.get() # def compute(self): # self.http() # self.show() # #虚函数 # def show(self): # pass # def notify(self,k): # print 'notify',k # # # #桥接模式,通过A,B 关联不同的http1和http2 # class BaseA(Base): # def __init__(self): # self.httpobj = Http1() # def notify(self,k): # print 'A notify',k # def show(self): # print 'show a' # # class BaseB(Base): # def __init__(self): # self.httpobj = Http2() # def notify(self,k): # print 'B notify',k # def show(self): # print 'show b' # # #观测者模式 # class Observer: # def __init__(self): # self.listOB = [] # def register(self,obj): # self.listOB.append(obj) # def notify(self): # for obj in self.listOB: # obj.notify(len(self.listOB)) # # #适配器模式 # class B1: # def http(self): # BaseB().http() # #工厂模式 # class Factory: # def CreateA(self): # return BaseA() # def CreateB(self): # return BaseB() # # # #单例模式 # class Logger(object): # log = None # @staticmethod # def new(): # # import threading # #线程安全 # mylock = threading.RLock() # mylock.acquire() # if not Logger.log: # Logger.log = Logger() # mylock.release() # # return Logger.log # def write(self,v): # print 'Logger ',v # # if __name__ == "__main__": # a = Factory().CreateA() # b = Factory().CreateB() # # objS = Observer() # objS.register(a) # objS.register(b) # # a.compute() # b.compute() # objS.notify() # # b1 = B1() # b1.http() # # Logger.new().log.write('v') 更多关于Python相关内容感兴趣的读者可查看本站专题:《Python图片操作技巧总结》、《Python数据结构与算法教程》、《Python Socket编程技巧总结》、《Python函数使用技巧总结》、《Python字符串操作技巧汇总》、《Python入门与进阶经典教程》及《Python文件与目录操作技巧汇总》 希望本文所述对大家Python程序设计有所帮助。 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |