Python学习笔记 | 练习2:温度转换 II
温度转换 II
温度的刻画有两个不同体系:摄氏度(Celsius)和华氏度(Fahrenheit)。
请编写程序将用户输入华氏度转换为摄氏度,或将输入的摄氏度转换为华氏度。
转换算法如下:(C表示摄氏度、F表示华氏度)
C = ( F - 32 ) / 1.8
F = C * 1.8 + 32
要求如下:
(1) 输入输出的摄氏度采用大写字母C开头,温度可以是整数或小数,如:C12.34指摄氏度12.34度;
(2) 输入输出的华氏度采用大写字母F开头,温度可以是整数或小数,如:F87.65指华氏度87.65度;
(3) 不考虑异常输入的问题,输出保留小数点后两位;
(4) 使用input()获得测试用例输入时,不要增加提示字符串。
输入示例1
C12.34
输出示例1
F54.21
输入示例2
F87.65
输出示例2
C30.92
参考代码:
TempStr = input()
if TempStr[0] in ['F','f']:
C = (eval(TempStr[1:]) - 32)/1.8
print("C{:.2f}".format(C))
elif TempStr[0] in ['C','c']:
F = 1.8*eval(TempStr[1:]) + 32
print("F{:.2f}".format(F))
else:
print("输入格式错误")
解析:
主要讲本题与老师示例的不同
1. 本题输入中表示温度体系的字母在头部,所以应该判断输入变量TempStr的第0个字符。
2. 计算时不需要表示温度体系的代码字母,所以计算时用的是变量TempStr的第1个字符至最后一个字符。