python实现Adapter模式实例代码

yipeiwu_com7年前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里面其实有一种特别方便实用的直接计算字符串算式的方法 那就是eval() s = '1+2*(6/2-9+3*(3*9-9))' print(eval(s)) #97....

Python 实现使用dict 创建二维数据、DataFrame

Python 实现使用 dict 创建二维数据 dict 的 keys、values 分别作为二维数据的两列 In [16]: d = {1:'aa', 2:'bb', 3:'cc'...

Python中asyncore异步模块的用法及实现httpclient的实例

基础 这个模块是socket的异步实现,让我们先来熟悉一下模块中的一些类和方法: 1.asyncore.loop 输入一个轮询循环直到通过计数或打开的通道已关闭。 2.asyncore....

Python编程中的异常处理教程

1、异常简介 从软件方面来说,错误是语法或是逻辑上的,当python检测到一个错误时,解释器就会指出当前流已经无法继续执行下去,这时候就出现了异常。异常分为两个阶段:首先是引起异常发生的...

Python实现针对含中文字符串的截取功能示例

本文实例讲述了Python实现针对含中文字符串的截取功能。分享给大家供大家参考,具体如下: 对于含多字节的字符串,进行截断的时候,要判断截断处是几字节字符,不能将多字节从中分割,避免截断...