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自动化运维_文件内容差异对比分析

模块:difflib 安装:Python版本大于等于2.3系统自带 功能:对比文本之间的差异,而且支持输出可读性比较强的HTML文档,与Linux中的diff命令比较相似。 两个字符串的...

python之import机制详解

python之import机制详解

本文详述了Python的import机制,对于理解Python的运行机制很有帮助! 1.标准import: Python中所有加载到内存的模块都放在 sys.modules 。当 imp...

详解Python循环作用域与闭包

前言 首先来看一段代码 x_list = [i for i in range(30)] y_list = [i for i in range(10, 20)] for y in y...

TensorFlow深度学习之卷积神经网络CNN

TensorFlow深度学习之卷积神经网络CNN

一、卷积神经网络的概述 卷积神经网络(ConvolutionalNeural Network,CNN)最初是为解决图像识别等问题设计的,CNN现在的应用已经不限于图像和视频,也可用于时间...

Python函数中定义参数的四种方式

Python中函数参数的定义主要有四种方式: 1. F(arg1,arg2,…) 这是最常见的定义方式,一个函数可以定义任意个参数,每个参数间用逗号分割,用这种方式定义的函数在调用的的时...