Python当中并无switch语句,本文研究的主要是通过字典实现switch语句的功能,具体如下。
switch语句用于编写多分支结构的程序,类似与if….elif….else语句。
switch语句表达的分支结构比if…elif…else语句表达的更清晰,代码的可读性更高
但是python并没有提供switch语句。
python可以通过字典实现switch语句的功能,实现方法分为两步:
首先,定义一个字典
其次,调用字典的get()获取相应的表达式。
计算器:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
|
from __future__ import division def jia(x,y): return x + y def jian(x,y): return x - y def cheng(x,y): return x * y def chu(x,y): return x / y def operator(x,o,y): if o = = '+' : print (jia(x,y)) elif o = = '-' : print (jian(x,y)) elif o = = '*' : print (cheng(x,y)) elif o = = '/' : print (chu(x,y)) else : pass operator( 2 , '/' , 4 ) |
用字典来实现switch操作
1
2
3
4
5
6
7
8
9
10
11
12
|
from __future__ import division def jia(x,y): return x + y def jian(x,y): return x - y def cheng(x,y): return x * y def chu(x,y): return x / y operator = { "+" :jia, "-" :jian, "*" :cheng, "/" :chu} print (operator[ "+" ]( 3 , 2 )) #operator["+"]等同于jia print (jia( 3 , 2 )) #operator["+"](3,2)等同于jia(3,2) |
运行结果:
5
5
1
2
3
4
5
6
7
8
9
10
11
12
13
14
|
from __future__ import division def jia(x,y): return x + y def jian(x,y): return x - y def cheng(x,y): return x * y def chu(x,y): return x / y operator = { "+" :jia, "-" :jian, "*" :cheng, "/" :chu} def f(x,o,y): p = operator.get(o)(x,y) print (p) f( 15 , '/' , 5 ) |
总结
以上就是本文关于Python分支结构(switch)操作简介的全部内容,希望对大家有所帮助。感兴趣的朋友可以继续参阅本站其他相关专题,如有不足之处,欢迎留言指出。感谢朋友们对本站的支持!
原文链接:http://blog.csdn.net/m0_38066258/article/details/77415674