python中实现switch,类似表驱动的方式
2017-03-27 11:26
1216 查看
实现一个简单的Switch 函数:
def case1(somearg):
pass
def case2(somearg):
pass
def case3(somearg):
pass
switch={ 1: case1, 2: case2, 3: case3 }
switch[case](arg)
========================================================
具体的例子:
def case1_include(A,B):
if (A in B):
print "B include A"
else:
print "NO"
def case2_equal(A,B):
print "A equal B"
switch={"include" :case1_include,
"equal" :case2_equal}
AA= "include jpg"
BB= "sfsdfdsdaf.jpg"
CC= AA.split(' ',1)
switch["include"](CC[1],BB)
输出:B include A
======================================================
这种把逻辑和实现,或者逻辑和数据分离的方式,非常的好,
简洁,明了,易于维护。也有人说这种是类似表驱动的方式。。
参考文章:https://www.zhihu.com/question/21123544
http://baike.baidu.com/link?url=oHqpiEhgxilZkgrYshnFeUsS29jj4u--4PX_n2canUOA_dS1JgDFUbTXHFY376AJLw6pmM6ZC3gJ6ciyaaILf_2Qglt1arCzAeGvGg2m5UWURFLY4rsQt7Qo-PRJE37w
def case1(somearg):
pass
def case2(somearg):
pass
def case3(somearg):
pass
switch={ 1: case1, 2: case2, 3: case3 }
switch[case](arg)
========================================================
具体的例子:
def case1_include(A,B):
if (A in B):
print "B include A"
else:
print "NO"
def case2_equal(A,B):
print "A equal B"
switch={"include" :case1_include,
"equal" :case2_equal}
AA= "include jpg"
BB= "sfsdfdsdaf.jpg"
CC= AA.split(' ',1)
switch["include"](CC[1],BB)
输出:B include A
======================================================
这种把逻辑和实现,或者逻辑和数据分离的方式,非常的好,
简洁,明了,易于维护。也有人说这种是类似表驱动的方式。。
参考文章:https://www.zhihu.com/question/21123544
http://baike.baidu.com/link?url=oHqpiEhgxilZkgrYshnFeUsS29jj4u--4PX_n2canUOA_dS1JgDFUbTXHFY376AJLw6pmM6ZC3gJ6ciyaaILf_2Qglt1arCzAeGvGg2m5UWURFLY4rsQt7Qo-PRJE37w
相关文章推荐
- python实现类似switch功能
- Python实现类似switch的分支结构
- Run As(运行方式) 的几种代码实现方式(Python和C#)
- 用拖拉实现设备驱动配置(EsayHMI最新驱动配置方式)
- python switch的实现
- 面向领域驱动架构的查询实现方式
- 转:面向领域驱动架构的查询实现方式
- (转)使用一个下拉框或文本框+列表框的方式实现类似IE地址栏自动完成的功能
- python中package机制的两种实现方式
- windows的分层驱动--内核实现的一种方式
- Python中switch的实现
- Extjs实现类似windows中资源管理器方式的图标文件清单
- 用拖拉实现设备驱动配置(EsayHMI最新驱动配置方式)
- windows的分层驱动--内核实现的一种方式
- 关于Python中一种回调方式的实现
- windows的分层驱动--内核实现的一种方式
- 用拖拉实现设备驱动配置(EsayHMI最新驱动配置方式)
- 中断方式实现发送数据串口驱动
- 面向领域驱动架构的查询实现方式
- 学习Python---Python实现方式