为 Python 中的两种不同情况定义具有相同指令的 match-case 语句

Defining a match-case statement with the same instruction for two different cases in Python

我想在 Python 中创建一个 match-case 语句,其中两个 case 执行相同的指令。例如,如果 Python 表现得像 C++,根据这个 Stack Overflow question,我会把 match-case 语句写成:

        match x:
            case 1:
            case 2:
                # Some code
                break
            case 3:
                # Some code
                break

但是代码不起作用,表明 match-case 语句需要在 Python 中以不同的方式编写。这是什么路?

match x:
    case 1 | 2:
        # Some code
    case 3:
        # Some code

Python 匹配子句不会落空,因此您不能像在 C 中那样将它们连接起来,也不要在子句末尾使用 break

"OR pattern"(如图所示,其中|表示“或”)可以与绑定变量的子模式一起使用,但所有子模式都需要绑定相同的变量。