解题思路:

        用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分

0 人评分

C语言网提供由在职研发工程师或ACM蓝桥杯竞赛优秀选手录制的视频教程,并配有习题和答疑,点击了解:

一点编程也不会写的:零基础C语言学练课程

解决困扰你多年的C语言疑难杂症特性的C语言进阶课程

从零到写出一个爬虫的Python编程课程

只会语法写不出代码?手把手带你写100个编程真题的编程百练课程

信息学奥赛或C++选手的 必学C++课程

蓝桥杯ACM、信息学奥赛的必学课程:算法竞赛课入门课程

手把手讲解近五年真题的蓝桥杯辅导课程

评论列表 共有 0 条评论

暂无评论