多态 分发
来源:互联网 发布:淘宝开店不进货 编辑:程序博客网 时间:2024/05/24 05:56
#coding:utf-8def output_xml(name): print 'XML:%s' % namedef output_html(name): print 'HTML:%s' % namedef output_doc(name): print 'DOC:%s' % namedef putdoc(types,name): print types,type(types) print name,type(name) eval('output_%s("%s")' % (types,str(name)))putdoc('doc',"sam")
实例二:
有两个文件如下:
myoutformat.py #定义输出的文件格式
#coding:utf-8class outputForm(object): def output_html(self,data): print 'html:',data def output_xml(self,data): print 'xml:',data def output_text(self,data): print 'text:',dataif __name__=="__main__": pass
myout.py #调用输出文件格式模块,输出文件
#coding:utf-8import myoutformatdef f(inst,form,data): #inst.output_text 是默认的方法参数,返回函数(或者:getattr(inst,'output_text')),如果此处是个字符串,则返回该字符串。此处应该是函数名称,返回函数 fun=getattr(inst,"output_%s" % form,inst.output_text) #调用函数fun fun(data)if __name__ == '__main__': a=myoutformat.outputForm() f(a,"html",'abc') f(a,"xml",'abc') f(a,"text",'abc') f(a,"NAME",'abc')
结果:
html: abc
xml: abc
text: abc
text: abc
- 多态 分发
- 事件分发
- 分发delegation
- 事件分发
- 事件分发
- 积木分发
- 积木分发
- 积木分发
- 积木分发
- 多级分发
- 事件分发
- touch分发
- 事件分发
- 分发工作
- 事件分发
- 事件分发
- 事件分发
- 事件分发
- poj 3067(树状数组)
- 如何快速配好java环境变量和查看电脑上安装JDK的版本位数
- sqoop倒入数据到HDFS或者HDFS倒入数据到数据库
- DVWA中学习PHP常见漏洞及修复方法
- 什么是回调函数
- 多态 分发
- Unity3D lightmap的assetbundle和动态载入
- Sqoop的安装和配置
- 报表设计序列
- GCC 命令行详解 -L 指定库的路径 -l 指定需连接的库名
- 搜索营销 (SEM)效果衡量类行业术语定义
- 河南财经政法大学计算机与工程学院CSDN社团面试
- HDU 4054 水
- sqoop命令