python語言switch-case


  初學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類來實現也沒問題......不過真有這個必要嗎

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM