python实现switch case
时间: 2023-10-16 17:16:49 浏览: 89
Python中并没有内置的switch case语句,但是可以通过字典和函数进行实现。以下是一个示例:
```python
def case_a():
print("A")
def case_b():
print("B")
def case_c():
print("C")
# 定义字典,将每个case与对应的函数关联起来
switcher = {
"a": case_a,
"b": case_b,
"c": case_c,
}
# 定义函数,接收一个参数,根据参数调用对应的函数
def switch(case):
func = switcher.get(case, lambda: "Invalid case")
return func()
# 调用函数,传入参数
switch("a") # 输出:A
switch("b") # 输出:B
switch("c") # 输出:C
switch("d") # 输出:Invalid case
```
在上述示例中,我们定义了三个函数`case_a`、`case_b`和`case_c`,分别对应三个case,然后使用一个字典`switcher`将每个case与对应的函数关联起来。最后定义了一个`switch`函数,接收一个参数`case`,根据参数调用对应的函数。调用`switch`函数时,传入不同的参数,就可以输出不同的结果。
需要注意的是,在字典中找不到对应的case时,我们使用了`lambda`表达式定义了一个匿名函数,返回字符串"Invalid case"。这样可以防止程序崩溃,而是输出友好的提示信息。
阅读全文