本篇文章給大家分享的是有關Python中的Switch Case語法時是怎樣的,小編覺得挺實用的,因此分享給大家學習,希望大家閱讀完這篇文章后可以有所收獲,話不多說,跟著小編一起來看看吧。
Python3.10 新增了一個語法特性。
就是最近一直被熱議的 switch-case 語句
我剛接觸Python的時候,也納悶Python咋個 switch 語句都沒有。
后來想明白了, 因為Python的哲學里面推崇的是簡單實用,從Python之禪里面也能窺探一二
任何問題應有一種 且最好只有一種, 顯而易見的解決方法
在沒有 switch … case 語句的時候,我們都是怎么解決這種問題的呢?
用 if … elif…
例如:
if code == 200: return "ok" elif code == 404: return "no found" elif code == 500 return "error" else: return "unknow"
這段代碼看起來就很直觀,只是稍微啰嗦的地方就是每行都有code==xxx的表達式判斷語句
于是,在一些Python最佳實踐里面,某些場景就推薦用字典來實現, 例如根據某個變量值返回不同的結果時
data = { 200: "ok", 404: "no found", 500: "error", } value = data.get(code, "unkonw")
很好的解決的代碼繁瑣的問題。
我們再來看看Python3.10中的switch case 怎么用的
http_code = "418" match http_code: case "200": print("OK") do_something_good() case "404": print("Not Found") do_something_bad() case "418": print("I'm a teapot") make_coffee() case _: print("Code not found")
和其他語言中的switch case 語法差不多,新增了match 關鍵字,比Java少了“break”關鍵字。
Python從91年發布到今天經歷了30個年頭
說真的,沒有 switch case 完全不影響開發效率,到3.10引入這么個語法糖出來,只能算是個不痛不癢的功能
真正用在生產環境,也是5、6年之后了,除非后面有重大版本的發布,誰沒事瞎折騰跟著你每年升級版本。
要知道,現在依然還有不少老系統還跑著Python2.x
我個人對這種語法糖層面的改進基本是沒啥可激動的!你要問我支不支持,我肯定支持,這樣以后我也可以理直氣壯地跟別人說,誰說Python不支持 swtich case....
以上就是Python中的Switch Case語法時是怎樣的,小編相信有部分知識點可能是我們日常工作會見到或用到的。希望你能通過這篇文章學到更多知識。更多詳情敬請關注億速云行業資訊頻道。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。