python之switch語句,優化多個if語句

2022-03-21 09:51:52 字數 696 閱讀 1228

python中並沒有多分支的語句。像c語言中有switch語句,可以避免多個if的使用場合,簡化**。

python若想實現多分支的功能需要自己構建**,涉及到裝飾器的知識點。下面舉個例子。

switch_dicts ={}

defdeco(data):

def

if data not

inswitch_dicts.keys():

switch_dicts[data] =func

return func(*args, **kwargs)

return

return

@deco(1)

def case1(*args, **kwargs):

print("

case1")

@deco(2)

def case1(*args, **kwargs):

print("

case2")

@deco(3)

def case1(*args, **kwargs):

print("

case3")

#裝飾器自動執行時,會自動將1,2,3裝入字典中

print

(switch_dicts)

呼叫字典中key為1所指向的函式

print(switch_dicts[1]())

JAVASE之條件語句之switch語句

switch語句結構 switch 表示式 使用switch的注意事項 switch 表示式 中表示式的返回值必須是下述幾種型別之一 int,byte,char,short,enum,string jdk1.7後 case子句中的值必須是常量,且所有case子句中的值應是不同的 default子句是...

語句 switch語句

switch語句的特點如下 1 switch x 被選擇的內容 即x 只能是byte,short,int,char這四種型別 2 備選答案並沒有指定的順序,但是執行肯定是從第乙個case開始的,如果其中有匹配的case,執行完,通過該case的break就結束了switch。如果沒有匹配的case,...

c 語法之switch語句

switch語句在c或c 語言中是非常普通的乙個語句了,而且我們也是經常用到的。而且我們使用的switch語句都是和case default break等語句一起使用的。switch語句的使用可以非常的簡單,也可以非常的複雜,所以你可以看到下面的一些另類的使用。首先問一下的是 你知道switch文法...