参加了考试,题目的要求是:
获得用户输入的一个字符串,格式如下:
M OP N
其中,M和N是任何数字,OP代表一种操作,表示为如下四种:+, -, *, /(加减乘除)
根据OP,输出M OP N的运算结果,统一保存小数点后2位。
注意:M和OP、OP和N之间可以存在多个空格,不考虑输入错误情况。
我上来就编辑了一个常规逻辑的程序:
M=float(input("请输入数字M:")) N=float(input("请输入数字N:")) OP=input("请输入操作符:(+, -, *, /)") if OP=="+": print('计算结果是:',format(M+N,"0.2f")) elif OP=="-": print('计算结果是:',format(M-N,"0.2f")) elif OP=="*": print('计算结果是:', format(M*N, "0.2f")) elif OP=="/": print('计算结果是:',format(M/N,"0.2f")) else: print('你输入的操作符有错误!')
自己还以为这个是考虑的比较齐全,功能是能够实现了,但是代买不够简洁,也没有按照题目的意思来答题。正确的答案是:
s = input() print("{:.2f}".format(eval(s)))
瞬间秒杀一切,使用eval函数
扫描二维码关注公众号,回复:
15824836 查看本文章