斯派克795 2021-08-11 15:08 采纳率: 100%
浏览 53
已结题

python计算器问题

我写的计算器脚本:

print('计算器')
while True:
    a=int(input('请输入第一个数字:'))
    b=str(input('请输入运算符号:'))
    c=int(input('请输入第二个数字:'))
    if b == '+':
        print('等于:',a+c)
    elif b == '-':
        print('等于:',a-c)
    elif b == '*':
        print('等于:',a*c)
    elif b == '/':
        print('等于:',a/c)
    else:
        print('错误')

只能计算两个数的结果,请问怎么改成多个数字运算的?

  • 写回答

3条回答 默认 最新

  • 天元浪子 Python领域优质创作者 2021-08-11 15:43
    关注

    换个思路,轻松写意。

    >>> while True:
        exp = input('请输入算式:')
        if exp == '' or exp == 'bye':
            break
        try:
            result = eval(exp)
        except:
            print('算式错误,请重新输入。')
        if isinstance(result, int):
            print('%s = %d'%(exp, result))
        else:
            print('%s = %f'%(exp, result))
    
            
    请输入算式:3+5*4
    3+5*4 = 23
    请输入算式:(3+5)*4
    (3+5)*4 = 32
    请输入算式:3/2
    3/2 = 1.500000
    请输入算式:bye
    >>> 
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(2条)

报告相同问题?

问题事件

  • 系统已结题 8月19日
  • 已采纳回答 8月11日
  • 创建了问题 8月11日

悬赏问题

  • ¥15 基于卷积神经网络的声纹识别
  • ¥15 Python中的request,如何使用ssr节点,通过代理requests网页。本人在泰国,需要用大陆ip才能玩网页游戏,合法合规。
  • ¥100 为什么这个恒流源电路不能恒流?
  • ¥15 有偿求跨组件数据流路径图
  • ¥15 写一个方法checkPerson,入参实体类Person,出参布尔值
  • ¥15 我想咨询一下路面纹理三维点云数据处理的一些问题,上传的坐标文件里是怎么对无序点进行编号的,以及xy坐标在处理的时候是进行整体模型分片处理的吗
  • ¥15 CSAPPattacklab
  • ¥15 一直显示正在等待HID—ISP
  • ¥15 Python turtle 画图
  • ¥15 stm32开发clion时遇到的编译问题