与其他编程语言不同,Python 没有开关语句的概念。所以我们使用字典映射来实现Python中的开关语句。
现在我们来讨论一下字典映射。考虑一个名为 switch_equivalent的字典 ,其键和值如下。
例子。
switch_equivalent = {0: "Zero", 1: "One", 2: "Two"}
这里我们定义了一个名为 fun() 的函数 , 它有一个字典 switch_equivalent ,并返回传入它的相应参数 (key) 的取值。
例子。
def funn(number):
switch_equivalent = {
0: "Zero",
1: "One",
2: "Two"
}
return switch_equivalent.get(number, "null")
if __name__ == "__main__":
number=2
print (fun(number))
输出。
如果字典中存在所传递的参数(key),则字典方法 get() 返回该参数的值,否则第二个参数将被分配为所传递参数的默认值。
下面是上述 Python 代码的 C++ 对应代码,以便更好地理解。
例子。
using namespace std;
string fun(int number)
{
switch(number)
{
case 0:
return "zero";
case 1:
return "one";
case 2:
return "two";
default:
return "null";
};
};
int main()
{
int argument = 0
cout << fun(number);
return 0;
}
Python 3.10版本有许多新的更新,其中之一是在Python中实现了switch case语句。这就是所谓的 匹配案例。
语法。
match variable_name:
case ‘pattern1’ :
//statement 1
case ‘pattern2’ :
//statement 2
…………...
case ‘pattern n’ :
//statement n
匹配案例由三个主要部分组成。
- 匹配关键字
- 一个或多个case子句
- 每个案例的表达式或语句
下面是我们上面讨论的等效的匹配案例代码。
例子。
def f(x):
match x:
case 1:
return "One"
case 2:
return "Two"
case 3:
return "Three"
The postReplacement for switch statements in Python?appeared first oni2tutorials.