解题思路:
用find查找运算符所在的位置,然后用切片的方式分离运算数,最后执行运算。
此题有多种解法:用enumerate遍历查找运算符,用正则表达式匹配运算符和运算数……
注意事项:参考代码中没有验证运算数的合法性,没有做错误处理
参考代码:
def cal():
exp = input().strip()
ops = ['+','-','*','/','%']
for i in ops:
pos = exp.find(i)
if pos != -1:
op_pos = pos
op = i
break
a_str = exp[:op_pos].strip()
b_str = exp[op_pos+1:].strip()
a = int(a_str)
b = int(b_str)
if op == '+':
result = a+b
elif op == '-':
result = a-b
elif op == '*':
result = a*b
elif op == '/':
result = a // b
elif op == '%':
result = a % b
return result
if __name__ == "__main__":
print(cal())
0.0分
0 人评分
C语言网提供由在职研发工程师或ACM蓝桥杯竞赛优秀选手录制的视频教程,并配有习题和答疑,点击了解:
一点编程也不会写的:零基础C语言学练课程
解决困扰你多年的C语言疑难杂症特性的C语言进阶课程
从零到写出一个爬虫的Python编程课程
只会语法写不出代码?手把手带你写100个编程真题的编程百练课程
信息学奥赛或C++选手的 必学C++课程
蓝桥杯ACM、信息学奥赛的必学课程:算法竞赛课入门课程
手把手讲解近五年真题的蓝桥杯辅导课程
发表评论 取消回复