python异常作业

这篇博客介绍了两个程序示例。第一个程序使用循环和异常处理实现温度转换,用户可以输入数字串+C或+F进行转换,输入Q或q退出。第二个程序涉及数学运算,计算ln(3x-1)/y的值,同时处理除0和负数求对数的异常。程序通过键盘输入x和y,提供异常提示。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1.实现由循环控制的温度转换程序,输入q或Q时结束程序。要求设

置异常处理:对于所有类型异常,程序都显示一下正确的输入数据格式,

然后返回去让用户重新输入数据。

while True:

    try:

        x=input("请输入'数字串+C'或'数字串+F',退出请按Q或q:")

        if x=="Q" or x=="q":

            break

        if x[-1] in ['F','f']:

            C=(eval(x[0:-1])-32)/1.8

            print("转换后的温度是{:.2f}C".format(C))

        elif x[-1] in ['C','c']:

            F=1.8*eval(x[0:-1])+32

            print("转换后的温度是{:.2f}F".format(F))

        else:

            print("输入格式错误")

    except:

        print("正确的输入格式是:'数字串+F'或'数字串+C'")

2.编写程序,键盘输入x和y的值,计算并输出表达式 ln(3x-1)/y          的值。要求设

置异常处理,对除0、负数求对数两种情况进行异常捕捉处理。

import math

while True:

    try:

        x,y=eval(input("请输入x,y:"))

        print(math.log(3*x-1)/y)

    except ZeroDivisionError:

        print("发生异常!除数不能为0!")

    except ValueError:

        print("发生异常!函数域错误!")

    else:

        break

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值