使用字典假设您有类似下面:条件执行,而不是if..elif
def case_A():
print 'A'
def case_B():
print 'B'
def case_generic():
print 'some generic case'
而且value
定义,并在其
你看到任何情况下一定值(S)在这里你不会想申请以下模式:
v = {"A":case_A, "B":case_B}
try:
v[value]()
except:
case_generic()
代替标准:
if value == "A":
case_A()
elif value == "B":
case_B()
...place n more if cases here...
else:
case_generic()
对我来说,第一个案例看起来更加紧凑和易于管理,尽管内存略有增加。或者,您是否看到了改进上述方法或使用更好方法的方法?
基本上codereview,对不对? – thefourtheye
排序,我一直在考虑如何实现不使用条件分支,并一直在玩弄上面的问题,在哪些情况下它将是无益的 – gts