我可以用三个变量编写switch/case语句来替换此代码吗:
if where_clause == 0:
requete(liste_fields,schema,table)
elif where_clause == 1:
if like_clause == 0:
if any_clause == 1:
requete_where_any(liste_fields,schema,table,wc_1,any_1)
else:
requete_where(liste_fields,schema,table,wc_1,wc_2)
elif like_clause == 1:
requete_like(liste_fields,schema,table,like_1,like_2)
elif where_clause == 2:
requete_double_where(liste_fields,schema,table,wc_1,wc_2,wc_3,wc_4)
elif where_clause == 3:
requete_triple_or(liste_fields,schema,table,oc_1,oc_2,oc_3,oc_4,oc_5,oc_6)
我换了一门课。它是用值初始化的,一个dict,其中键、值对将每个值的操作表示为一个包含函数、可选参数和可选默认操作的列表。 例如,您应该这样称呼它:
t默认参数没有参数,所以只需打印新行即可
调用开关时,会调用相应的函数:
好的方面是
switch
对象具有__call__
方法,因此可以嵌套开关以下是您案例的实施和应用程序:
该类可以通过在初始化时不传递值和在调用时传递值来轻松改进,例如:
可以使用以下函数定义模拟switch语句:
然后,您的代码可能如下所示:
请注意,您不必使用单词
case
,您可以选择更有意义的:相关问题 更多 >
编程相关推荐