python程序语言设计基础(第二版)

课后习题答案解析(56页程序设计题)

2.1 题

实例1的修改。改造实例代码1.1,采用eval(input(<提示内容>))替换现有的输入部分,并使输出的温度值为整数。

实例1代码如下:

TempStr = eval(input("请输入带无单位的温度值:"))
Unit = input("请输入单位:")
if Unit in ['F','f'] :
    C = (TempStr - 32)/1.8
    print("{:.2f}C".format(C))
elif Unit in ['C','c'] :
    F = 1.8 * TempStr +32
    print("{:.2f}F".format(F))
else :
    print("格式错误")

由于eval函数的作用是将input函数获取到的字符转化为Python语句,因此只需要在input函数外嵌套一个eval函数,但需要注意的是,eval无法转换混合的字符串,例如输入45F,eval函数是无法将其转换的,需要使用新的变量unit来存放单位;输出温度为整数只需要将实例1中的2f改为0f,代表着这个槽位置只保留整数输出

#这里使用了一个异常捕获,你也可以使用if elif else 格式来写
try:
       TempStr=eval(input("请输入无符号的温度值:"))
       Unit=input("请输入温度单位:")
       if Unit in ['F','f']:
              C=(TempStr-32)/1.8
              print("转换后的温度为{:.0f}C".format(C))
       elif Unit in ['C','c']:
              F=1.8*TempStr+32
              print("转换后的温度为{:.0f}F".format(F))
except:
       print("输入的格式错误")
       

2.2 题

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值