日日操夜夜添-日日操影院-日日草夜夜操-日日干干-精品一区二区三区波多野结衣-精品一区二区三区高清免费不卡

公告:魔扣目錄網為廣大站長提供免費收錄網站服務,提交前請做好本站友鏈:【 網站目錄:http://www.ylptlb.cn 】, 免友鏈快審服務(50元/站),

點擊這里在線咨詢客服
新站提交
  • 網站:51998
  • 待審:31
  • 小程序:12
  • 文章:1030137
  • 會員:747

Match 和 switch 都是控制流語句,但它們在語法和用法上有一些區別。

Python 的 match 有點好用,推薦試試

(1) 語法:

  • switch 語句通常在其他編程語言中使用,如 C、C++、JAVA 等。它的語法通常是 switch(expression) { case value1: ... case value2: ... default: ... }。
  • match 語句是 Python/ target=_blank class=infotextkey>Python 3.10 引入的新特性,它的語法是 match subject: case pattern_1: ... case pattern_2: ... case _: ...。

(2) 匹配模式:

switch 語句通常只能匹配整數或枚舉類型,而 match 語句可以匹配更復雜的模式,包括字符串、列表、元組等。

(3) 執行順序:

  • switch 語句通常會按照 case 的順序執行,直到找到匹配的 case 為止。如果沒有找到匹配的 case,那么就會執行 default 分支。
  • match 語句會按照 case 的順序執行,直到找到匹配的 case 為止。如果沒有找到匹配的 case,那么就會執行 _ 分支。

(4) 性能:

  • switch 語句通常比 match 語句更快,因為它可以直接跳轉到匹配的 case。
  • match 語句的性能通常比 switch 語句差,因為它需要逐個檢查每個 case。

總的來說,match 和 switch 都是控制流語句,但它們在語法、匹配模式、執行順序和性能等方面有一些區別。

在 Python 3.10 中,引入了 match 語句作為 switch 語句的更強大版本。match 語句可以用于模式匹配,這是一種更靈活和可讀性更高的方式來匹配值。

match 語句的基本語法如下:

python
match subject:
    case pattern_1:
        # code to execute if subject matches pattern_1
    case pattern_2:
        # code to execute if subject matches pattern_2
    ...
    case _:
        # code to execute if subject does not match any of the patterns

其中,subject 是要匹配的值,pattern_1 和 pattern_2 是匹配模式,_ 是一個特殊的模式,用于匹配任何值。

例如,我們可以使用 match 語句來匹配一個整數的值:

python
def http_error(status):
    match status:
        case 400:
            return "Bad request"
        case 404:
            return "Not found"
        case 418:
            return "I'm a teapot"
        case _:
            return "Something's wrong with the inte.NET"

在這個例子中,match 語句會嘗試匹配 status 的值,并執行相應的代碼。如果 status 的值不匹配任何一個模式,那么就會執行 _ 模式對應的代碼。

match 語句也可以匹配更復雜的模式,例如,我們可以匹配一個元組:

python
match point:
    case (0, 0):
        print("Origin")
    case (0, y):
        print(f"Y={y}")
    case (x, 0):
        print(f"X={x}")
    case (x, y):
        print(f"X={x}, Y={y}")
    case _:
        rAIse ValueError("Not a point")

在這個例子中,match 語句會嘗試匹配 point 的值,并執行相應的代碼。如果 point 的值不匹配任何一個模式,那么就會引發 ValueError 異常。

分享到:
標簽:Python
用戶無頭像

網友整理

注冊時間:

網站:5 個   小程序:0 個  文章:12 篇

  • 51998

    網站

  • 12

    小程序

  • 1030137

    文章

  • 747

    會員

趕快注冊賬號,推廣您的網站吧!
最新入駐小程序

數獨大挑戰2018-06-03

數獨一種數學游戲,玩家需要根據9

答題星2018-06-03

您可以通過答題星輕松地創建試卷

全階人生考試2018-06-03

各種考試題,題庫,初中,高中,大學四六

運動步數有氧達人2018-06-03

記錄運動步數,積累氧氣值。還可偷

每日養生app2018-06-03

每日養生,天天健康

體育訓練成績評定2018-06-03

通用課目體育訓練成績評定