初學python語言,竟然很久才發現python沒有switch-case語句,查看官方文檔說是可以用if-elseif-elseif。。。。代替。
講真,這都不是問題。不就是一個條件判斷嗎。用if-elseif-.......肯定沒問題,同時也用其他的解決方案,比較簡單的就是利用
字典來實現同樣的功能。寫一個字典,每個key對應的值是一個方法。如switch = {"valueA":functionA,"valueB":functionB,"valueC":functionC}
調用時可以像這樣
try:
switch["value"]() #執行相應的方法。
except KeyError as e:
pass 或 functionX #執行default部分
簡單代碼如下:
1 switch = { 2 "a":lambda x:x*2, 3 "b":lambda x:x*3, 4 "c":lambda x:x**x 5 } 6 7 try: 8 swtich["c"](6) 9 except KeyError as e: 10 pass
如果不嫌麻煩自己寫一個swtich類來實現也沒問題......不過真有這個必要嗎