bmr2.0--异常处理

当设计一款程序由客户去操作输入数据时,可能会存在许多不可控的程序风险
例如:性别输入英文、年龄输入汉字或者缺少输入重要的数据都会导致程序报错甚至崩溃
在这里插入图片描述
这里的错误就是由于体重输入汉字导致的程序出现bug,那么如何才能使程序尽可能地趋于稳定和完整化呢?我们需要考虑多种情况

try:
    sex = shuju[0]
    weight = float(shuju[1])
    height = float(shuju[2])
    age = int(shuju[3])
    if sex == '男':
    # 男性
        bmr = (13.7 * weight) + (5.0 * height) - (6.8 * age) + 66
    # 女性
    elif sex == '女':
        bmr = (9.6 * weight) + (1.8 * height) - (4.7 * age) + 655
    else:
        bmr = -1
    if bmr != -1:
        print('您的性别:{},体重: {}KG,身高: {}cm,年龄: {}岁'.format(sex, weight, height, age))
        print('您的基础代谢率为:{}大卡'.format(bmr))
    else:
        print('您输入的有误请重新输入')

except ValueError :
    print('请您正确输入!')
except IndexError :
    print('请您正确输入!')
except :
    print('系统异常,请重新输入')

在这里用到了try-excpet异常处理语句,当输入一串数据之后,程序会判定是否为“合法有效”的,如若不是,会自动输出‘请您正确输入’提醒用户正确的输入信息进行计算,避免了程序异常所带来的麻烦,实现对程序的异常处理。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

kate zhu

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值