题目
描述
输入一个表达式(用字符串表示),求这个表达式的值。
保证字符串中的有效字符包括[‘0’-‘9’],‘+’,‘-’, ‘*’,‘/’ ,‘(’, ‘)’,‘[’, ‘]’,‘{’ ,‘}’。且表达式一定合法。
输入描述:
输入一个算术表达式
输出描述:
得到计算结果
示例1
输入:
3+2*{1+2*[-4/(8-6)+7]}
输出:
25
解题思路
(1)将运算中的大括号与中括号转换成小括号
(2)用eval函数对运算字符串进行强制运算
代码
while True :
try:
in_str = input()
in_str.replace("{", "(")
in_str.replace("}", ")")
in_str.replace("[", "(")
in_str.replace("]", ")")
print(str(eval(in_str)))
except Exception:
break
Reference
华为机试题库_在线编程+题解_牛客题霸_牛客网
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)