python中缀表达式求值

【问题描述】

编写一个程序,对输入的中缀表达式求值。中缀表达式由以下几部分构成:

  1.    运算量都是一位整数。
    
  2.    运算符有四种:'+'、 '-'、 '*'、 '/',代表四则运算。
    
  3.    小括号(可以嵌套)。
    

在计算时,运算量均以浮点数进行计算。运算结果也是一个浮点数。
【输入形式】

从当前目录下express.in文件读入中缀表达式。
该文件只有一行字符串,是由上述各部分构成的一个合法中缀表达式。表达式中不含空格,字符个数不超过80个。
【输出形式】

将计算结果输出到当前目录下express.out文件中。
运算结果以"%f"形式输出,保留默认的小数位数。
【输入样例】

7+7-8-59/3+3-93+((3-6+6)/4-3)
【输出样例】

-35.250000
【样例说明】

中缀表达式7+7-8-59/3+3-93+((3-6+6)/4-3)求值的结果是-35.250000

f = open('express.in')
s = f.readline()
s = s.replace('\n', '')
g = open('express.out', 'a')
g.seek(0)
g.truncate()
result = eval(s)  # 字符串表达式求值
result = '%.6f' % result
g.write(str(result))
f.close()
g.close()
  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值