python中的分支结构

python不提供switch语句,但是python可以通过字典实现switch语句的功能

实现方法分两步:
首先:定义一个地点
其次:调用字典的get()获取相应的表达式
原始方法:
from __future__ import division #内置函数,解决整型除以整型得不到小数
jia = lambda x, y:x + y
jian = lambda x, y:x - y
chen = lambda x, y:x * y
chu = lambda x, y:x / y
def cz(x, o, y):
    if o == '+':
        print(jia(x, y))
    elif o == '-':
        print(jian(x, y))
    elif o == '*':
        print(chen(x, y))
    elif o == '/':
        print(chu(x, y))
    else:
        print('请输入+-*/')
x = int(input('输入第一个数字:'))
y = int(input('输入第二个数字:'))
o = input('输入运算符:')
cz(x, o, y)

用字典方法:

from __future__ import division #内置函数,解决整型除以整型得不到小数
jia = lambda x, y:x + y
jian = lambda x, y:x - y
chen = lambda x, y:x * y
chu = lambda x, y:x / y
x = int(input('输入第一个数字:'))
y = int(input('输入第二个数字:'))
o = input('输入运算符:')
cz = {'+':jia, '-':jian, '*':chen, '/':chu}
print(cz[o](x, y))

最优get()获取

from __future__ import division
x = int(input('1:'))
y = int(input('2:'))
operator = input('+ - * /:')
result = {'+':x+y, '-':x-y, '*':x*y, '/':x/y}
print(result.get(operator))

 

posted @ 2016-07-20 17:25  tan·滨  阅读(392)  评论(0)    收藏  举报