python实现Adapter模式实例代码

yipeiwu_com6年前Python基础

本文研究的主要是python实现Adapter模式的相关内容,具体实现代码如下。

Adapter模式有两种实现方式一种是类方式。

#理解 
#就是电源适配器的原理吧,将本来不兼容的接口类能够工作 
#这个是类实现方式 
#例子 
#假如一个插座类输出脚是3脚的,而台灯需要的是两脚插座,现在就需要一个Adapter实现适配插座 
#Adaptee 
class socket(object): 
  def Trigle(self): 
    print 'power supply' 
#target 
class tableLamp(object): 
  def needTwo(self): 
    pass 
#adapter 
class Adapter(tableLamp,socket): 
  def needTwo(self): 
    self.Trigle() 
#client 
if __name__=='__main__': 
  lamp=Adapter() 
  lamp.needTwo() 

运行如图

第二种是对象方式。

#这个是对象实现方式 
class socket(object): 
  def Trigle(self): 
    print 'power supply over' 
#target 
class tableLamp(object): 
  def needTwo(self): 
    pass 
#adapter 
class Adapter(tableLamp): 
  def __init__(self,Socket): 
    self.socket=Socket 
  def needTwo(self): 
    self.socket.Trigle() 
#client 
if __name__=='__main__': 
  plug=socket() 
  lamp=Adapter(plug) 
  lamp.needTwo() 

运行如图:

总结

以上就是本文关于python实现Adapter模式实例代码的全部内容,希望对大家有所帮助。感兴趣的朋友可以继续参阅本站其他相关专题,如有不足之处,欢迎留言指出。感谢朋友们对本站的支持!

相关文章

python实现一次创建多级目录的方法

本文实例讲述了python实现一次创建多级目录的方法。分享给大家供大家参考。具体实现方法如下: import os os.makedirs( "/home/jb51/data" )...

Python函数参数类型及排序原理总结

这篇文章主要介绍了Python函数参数类型及排序原理总结,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 Python中函数的参数问题有...

django 实现celery动态设置周期任务执行时间

django 实现celery动态设置周期任务执行时间

蓝鲸paas平台app开发经验分享 腾讯蓝鲸智云是一套基于PaaS的技术解决方案,提供了完善的前后台开发框架、调度引擎、公共组件等模块,帮助业务的产品和技术人员快速构建低成本、免运维的支...

python中使用ctypes调用so传参设置遇到的问题及解决方法

问题 近日在做一组声纹聚类时,使用了另一团队同学开发的声纹距离算法。该算法对外提供的是一组so包,需要使用方自己去使用。在python中调用纯so包一般使用ctypes类库,用起来看起来...

在Python的Flask框架中实现全文搜索功能

 全文检索引擎入门 灰常不幸的是,关系型数据库对全文检索的支持没有被标准化。不同的数据库通过它们自己的方式来实现全文检索,而且SQLAlchemy在全文检索上也没有提供一个好的...